Docker 基础 - Docker容器常用命令

  • 运行环境:
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/

截屏2020-01-0316.48.02.png

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

你可能感兴趣的:(Docker 基础 - Docker容器常用命令)