docker容器操作
常用命令 docker run docker run 选项 镜像 命令 命令参数… 选项 --name 表示为启动的容器起个名字,这个名字在宿主机上唯一 -t 为docker分配一个伪终端
docker容器操作
发布时间:2023-10-17 (2023-10-17)

常用命令

docker run

docker run 选项 镜像 命令 命令参数...

选项

  1. --name 表示为启动的容器起个名字,这个名字在宿主机上唯一
  2. -t 为docker分配一个伪终端并绑定到容器的标准输入上
  3. -i 是让容器的标准输入保持打开状态
  4. -v 目录映射,实现数据的持久化,冒号前面表示宿主机的目录,后面是容器内目录。目录不存在会自动生成。
  5. -p 端口映射,宿主机端口:容器端口
  6. -e 表示要设置环境变量
  7. -d 表示要以分离模式(也就是后台模式)启动容器,这样执行后会返回容器ID,不会进入交互界面。如果想要进入交互界面需要-i 和-t参数。
  8. --privileged 表示是否使用特权模式,设置–privileged=true提升系统执行权限。设置为true后,容器内的root用户才是真正的root权限,否则只是一个普通用户。

容器列表

# 正在运行中的容器
docker ps
# 所有容器
docker ps -a
# 只获取容器id
docker ps -a -q
# 指定输出的内容
docker ps -a --format "table {{.ID}}\t{{.Names}}"
名称  含义
.ID  容器ID
.Image  镜像ID
.Command  执行的命令
.CreatedAt  容器创建时间
.RunningFor  运行时长
.Ports  暴露的端口
.Status  容器状态
.Names  容器名称
.Label  分配给容器的所有标签
.Mounts  容器挂载的卷
.Networks  容器所用的网络名称


.Repository  镜像名称
.Size  镜像大小
.Tag  镜像标签
.CreatedAt  创建图像的时间

进入容器

docker exec -it 容器名称/ID /bin/bash

注意:有的镜像可能没有/bin/bash命令

容器-d 模式启动后,需要登录容器才能在其中进行操作。docker exec适用于在现有容器中运行命令的情况。此时需要进行交互,所以需要加上熟悉的 -it。

docker exec -it nginx:v1 /bin/sh

停止,启动,重启,删除

docker stop docker_id
docker start docker_id
docker restart docker_id
# 删除没有运行的容器
docker rm docker_id
# 删除运行中的容器
docker rm -f docker_id 
# 停止所有容器
docker stop $(docker ps -a -q)
# 删除所有容器
docker rm -f $(docker ps -a -q)

端口映射

目录映射

windows的目录映射,要这样写

docker run -itd --name ng_v3 -p 83:80 -v G:\\IT\\go_pro\\gin_study\\dockerfile_study\\html:/usr/share/nginx/html  nginx:v3

如果报错,需要加一下权限