1、创建容器命令

命令:docker create -it ubuntu:latest
root@docker-test:~# docker create -it ubuntu:latest
启动容器命令
docker start
查看容器命令
docker ps -a
2、新建并启动容器命令
主要命令:docker run  等价于先docker create 再执行docker start
3、下面的命令输出一个“hello world”, 之后容器自动终止
root@docker-test:~# docker run ubuntu /bin/echo "hello world"
hello world
4、当利用docker run命令来创建并启动容器时,docker在后台运行的标准操作包括:
1、检查本地是否存在指定的镜像,不存在就从公有仓库下载
2、利用镜像创建并启动一个容器
3、分配一个文件系统,并在只读的镜像层外面挂载一层可读写层
4、从宿主机配置的网桥接口中桥接一个虚拟接口到容器中去
5、从地址池配置一个IP地址给容器
6、执行用户指定的应用程序
7、执行完毕后容器被终止
5、启动并运行一个shell终端,允许用户和容器进行交互
root@docker-test:~# docker run -t -i ubuntu:latest /bin/bash
可以输入exit退出,或者ctrl+d
当退出后,该容器就自动处于终止状态,对于docker容器来说,当运行的应用(此处例子中为bash)退出后,容器也就没有继续运行的必要了
6、让容器在后台运行
下面的命令会在后台运行:
root@docker-test:~# docker run -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"
命令的作用是在跑一个while循环,输出hello world
查看运行的容器的信息
root@docker-test:~# docker ps -a
获取容器的输出信息:
root@docker-test:~# docker logs 339b05880d1c
7、终止docker容器
docker stop 339b05880d1c   (容器id)
查看处于终止状态的容器的信息:
root@docker-test:~# docker ps -a -q
处于终止状态的docker容器可以使用start命令启动
8、进入容器(进入容器内部进行操作:部署应用,配置IP地址,等等)
通过attach命令进入容器 (这个命令是docker自带的命令)
演示:
首先从ubuntu镜像创建并启动一个容器
root@docker-test:~# docker run -idt ubuntu
fcba62ef03efff495473d62d364baa311640b641dfe9494fe8069f3ff0e0cac4
root@docker-test:~# docker ps #查看
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
fcba62ef03ef        ubuntu:latest       "/bin/bash"         10 seconds ago      Up 10 seconds                           happy_elion         
root@docker-test:~# docker attach fcba62ef03ef   #通过attach命令进入容器
root@fcba62ef03ef:/#     #已经进入成功
注意:attach命令进入容器后,用exit命令退出后会导致容器也被终止运行并删除了
通过exec命令进入容器:
root@docker-test:~# docker run -idt ubuntu    #创建并启动一个容器(并且在后台运行,-t选项是给容器分配一个伪终端)
e601d1353222d662c48a143e5eb389f3f7ac4395318e3f76353fd4690b3aec81
root@docker-test:~# docker exec -ti e601d1353222 /bin/bash    #通过exec命令进入容器
root@e601d1353222:/#     #进入成功
9、删除容器
使用docker rm命令进行删除
docker rm -f [容器ID|容器名字]  -f参数是强行终止并删除一个运行中的容器
-l 参数 删除容器的连接,但保留容器
-v 参数 删除容器挂载的数据卷
10、导入和导出容器
1、导出
导出容器是指导出一个已经创建的容器到一个文件,
root@docker-test:~# docker export d529f11ed9b4 > test_ubuntu_export_file.tar
可将这些导出的容器文件传输到其他机器上,在其他机器上通过导入命令实现容器的迁移(其他容器需要有容器环境)
2、容器导入
root@docker-test:~# cat test_ubuntu_export_file.tar | docker import - test/ubuntu:v1.0
注意:导入的容器文件是会变成镜像,那么从这个镜像启动容器即可