Docker-基本操作&HelloWorld

docker系列文章:https://www.jianshu.com/nb/30096674

来源:
https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-16-04
http://www.runoob.com/docker/docker-hello-world.html
https://blog.csdn.net/u012002805/article/details/80767814

docker用户组

docker 命令需要使用sudo 权限来运行。每次都输入sudo很不方便。讲当前用户加入 docker 用户组就不用这么麻烦了。

$ sudo usermod -aG docker ${USER}

测试

使用:docker run hello-world
成功示例

则安装成功。

基本操作

查找:docker search ubuntu 来查找ubuntu镜像

下载:docker pull ubuntu

运行:(如果没有下载就先下载)docker run ubuntu

查看已经下载的镜像:docker images

运行:docker run -it ubuntu
The combination of the -i and -t switches gives you interactive shell access into the container: -it 代表着和容器可以有交互式命令行操作。之后会变成 root@d9b100f2f636:/# 的输出。之后正常使用即可。
-t:在新容器内指定一个伪终端或终端。
-i:允许你对容器内的标准输入 (STDIN) 进行交互。
–name 后面可以跟上名字:如:docker run -d -P –name runoob training/webapp python app.py

docker的id就是@后面的东西,如上述的d9b100f2f636
需要输入docker的id 可以只输入前几个字母/数字

退出:在docker命令行之中直接exit

删除:使用docker rm (之后跟着id,如d9b100f2f636)

保存镜像:docker commit -m “What did you do to the image” -a “Author Name” container-id repository/new_image_name
也就是说 docker commit -m “备注” -a “作者名称” 刚才显示的id repository名称/image名称。
之后就可以在docker images里面找到了。他是保存在本地的。

删除镜像:docker rmi (后面是id)

显示所有运行的docker:docker ps

显示最后创建的docker:docker ps -l (l 是 lastest)

显示全部docker:docker ps -a (a 是 all)

停止docker:docker stop container-id 比如:docker stop d9b100f2f636

启动docker:docker start d9b100f2f636(可以加上-i)

Docker Hub上传:https://hub.docker.com/
docker login -u docker-registry-username
docker push docker-registry-username/docker-image-name (作者id/repository名字)
如果需要下载:docker pull repository(比如docker pull fengh16/fh)

查看标准输出:docker logs( + id或者name)
加上-f之后能够

查看运行的程序:docker top

显示docker底层信息:docker inspect

加标签:docker tag (可以通过这个来修改repository,如docker tag 2a4cc fengh16/aaa:v1,直接添加另一个标签,然后把它的repository设置为fengh16/aaa并且tag是v1。如果重复操作,不会重复创建)

docker保存container:https://www.jianshu.com/p/95bafb2c14bc