容器常用命令

1、创建的容器未启动
      $ docker create image
      $ docker commit –m “Added a new file” –a “Docker Newbee” a925cb40b3f0 test
         OPTIONS说明(常用):
    •   -a, --author=”” 作者信息
    •   -m, --message=”” 提交消息
    •   -p, --pause=true 提交时暂停容器运行
2、新建并启动容器
      $ docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
      $ docker run -d -p 2222:22 --name base csphere/centos:7.1
    OPTIONS说明(常用):
    • -d: 后台运行容器,并返回容器ID;
    • --name="nginx-lb": 为容器指定一个名称;
    • -i:以交互模式运行容器,通常与 -t 同时使用;
    • -t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
    • -v: 对外挂在目录,将mysql数据持久化到本地,如/mysql/data:/var/lib/mysql
    • --restart: 设置自动启动,如--restart=always
    • -e:启动成功后可以在外部直接访问,给容器传环境变量
    • -P:  随机端口映射;如 2222:22,2222是随机生成的端口号,可通过2222访问容器
    • -p: 指定端口映射,有以下四种格式
    • ip:hostPort:containerPort
    • ip::containerPort
    • hostPort:containerPort
    • containerPort
                     如 2222:22,2222是指定的端口号,可通过2222访问容器
    • --net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container:<name|id> 四种类型;
# 使用docker镜像nginx:latest以后台模式启动一个容器,并将容器命名为mynginx。
docker run --name mynginx -d nginx:latest
 
# 使用镜像nginx:latest以后台模式启动一个容器,将容器的80端口映射到主机的91端口,主机的目录/data映射到容器的/data。
docker run -p 91:80 -v /data:/data -d nginx:latest
 
# 使用镜像nginx:latest以交互模式启动一个容器,在容器内执行/bin/bash命令。
[root@localhost docker]$ docker run -it nginx:latest /bin/bash
root@b8573233d675:/#
 
3、查看容器
      $ docker ps [OPTIONS]
     OPTIONS说明(常用):
    • -a :显示所有的容器,包括未运行的。
    • -f :根据条件过滤显示的内容。
    • --format :指定返回值的模板文件。
    • -l :显示最近创建的容器。
    • -n :列出最近创建的n个容器。
    • --no-trunc :不截断输出。
    • -q :静默模式,只显示容器编号。
    • -s :显示总的文件大小。
4、停止容器
      $ docker stop CONTAINER_ID/CONTAIN_NAME
      $ docker stop fdffd
5、强制停止容器
      $ docker kill CONTAINER_ID/CONTAIN_NAME
6、启动已停止容器
      $ docker start CONTAINER_ID/CONTAIN_NAME
      $ docker start/stop container_id
7、重启容器
      $ docker restart CONTAINER_ID/CONTAIN_NAME
8、进入容器
      $ docker exec -it CONTAINER_ID/CONTAIN_NAME bin/bash
9、删除容器
      $ docker rm [OPTIONS] CONTAINER [CONTAINER...]
     OPTIONS说明(常用):
    • -f :通过SIGKILL信号强制删除一个运行中的容器
    • -l :移除容器间的网络连接,而非容器本身
    • -v :-v 删除与容器关联的卷
      $ docker rm fdffd
10、复制容器里的内容
      $ docker cp 容器名称:目录 复制到的目录
     例:docker cp maven:/hello/target/hello.war .
11、查看容器的ip地址
      $ docker inspect -f '{{ .NetworkSettings.IPAddress }}' 容器id
12、获取容器/镜像的元数据
      $ docker inspect 容器id 
13、查看容器内运行情况
     $ supervisorctl
 

原文地址:https://www.cnblogs.com/snailgirl/p/15504231.html