- 运行环境:
CentOS 7.4 64位
1、新建并启动容器
- docker run 命令可新建并启动一个容器
docker run 参数选项
选项 | 含义 | 格式 |
---|---|---|
-d | 表示后台运行 | docker run -d |
-P | 随机端口映射 | docker run -P |
-p | 指定端口映射 | docker run -p ip:hostPort:containerPort docker run -p ip::container docker run -p hostPort:containerPort docker run -p containerPort |
-network | 指定网络模式 | --network=bridge:默认选项,表示连接到默认的网桥 --network=host:容器使用宿主机的网络 --network=container:NAME_or_ID:告诉Docker 让新建的容器使用已有的网络配置 --network=none:不配置该容器的网络,用户可自定义网络配置 |
- 打印Hello world
docker run java bin/echo 'hello-world'
运行结果:
hello, docker
- 启动一个Tomcat容器
docker run -d -p 8081:8080 tomcat:7.0.96
访问http://Docker宿主机IP:8081/
2、列出Docker 容器
- docker ps 命令可列出运行中的容器
docker ps
列出运行中的容器:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
effeb80a37bd tomcat:7.0.96 "catalina.sh run" 6 minutes ago Up 6 minutes 0.0.0.0:8081->8080/tcp pedantic_fermi
- docker ps -a 命令可列出所有容器
docker ps -a
列出所有容器:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8d08f9e633a7 hello-world "/hello" 39 seconds ago Exited (0) 38 seconds ago exciting_blackwell
effeb80a37bd tomcat:7.0.96 "catalina.sh run" 10 minutes ago Up 10 minutes 0.0.0.0:8081->8080/tcp pedantic_fermi
3、停止容器
- docker stop 命令可停止容器
docker stop effeb80a37bd
其中effeb80a37bd为容器ID
停止容器:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ID为effeb80a37bd的容器已停止运行
4、重启已停止的容器
- docker restart 命令可启动已停止的容器
docker restart effeb80a37bd
其中effeb80a37bd为容器ID
已停止容器被重启:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
effeb80a37bd tomcat:7.0.96 "catalina.sh run" 17 minutes ago Up 17 minutes 0.0.0.0:8081->8080/tcp pedantic_fermi
ID为effeb80a37bd的容器已运行
5、进入运行中的容器
- docker exec 命令可进入运行中的容器
选项 | 含义 |
---|---|
-d | 表示后台运行 |
-i | 保持STDIN打开 |
-t | 分配一个伪终端 |
bash | 通过exec命令对指定的容器执行bash |
docker exec -it effeb80a37bd bash
其中effeb80a37bd为容器ID
进入运行中容器的目录:
[root@iz2zecm2bsuv22ivfxu675z /]# docker exec -it 3d74fc0cf28b bash
root@3d74fc0cf28b:/usr/local/tomcat# ls
BUILDING.txt NOTICE RUNNING.txt include native-jni-lib work
CONTRIBUTING.md README.md bin lib temp
LICENSE RELEASE-NOTES conf logs webapps
6、退出运行中的容器
- exit 命令可退出运行中的容器
root@3d74fc0cf28b:/usr/local/tomcat# exit
exit
[root@iz2zecm2bsuv22ivfxu675z /]#
7、删除已停止的容器
- docker rm 可删除已停止的容器
docker rm effeb80a37bd
其中effeb80a37bd为容器ID
已停止容器被删除:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES