自学内容网 自学内容网

docker常用命令及用法

常用参数

--name:        设置容器名称
--volume:      (简写 -v) 设置挂载的目录
--workdir:     (简写 -w) 指定容器工作目录
--publish:     (简写 -p) 映射端口
--env:         (简写 -e) 设置容器环境变量
--hostname:    (简写 -h) 设置容器内hostname
--tty:         (简写 -t) 分配一个伪终端
--interactive: (简写 -i) 保持容器内的标准输入 (STDIN) 进行交互

命令帮助

 ☁  ~  docker --help 

Usage:  docker [OPTIONS] COMMAND

A self-sufficient runtime for containers

Common Commands:
  run         Create and run a new container from an image
  exec        Execute a command in a running container
  ps          List containers
  build       Build an image from a Dockerfile
  pull        Download an image from a registry
  push        Upload an image to a registry
  images      List images
  login       Log in to a registry
  logout      Log out from a registry
  search      Search Docker Hub for images
  version     Show the Docker version information
  info        Display system-wide information

子命令帮助

 ☁  ~  docker run --help                          

Usage:  docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

Create and run a new container from an image

Aliases:
  docker container run, docker run

Options:
      --add-host list                    Add a custom host-to-IP mapping (host:ip)
      --annotation map                   Add an annotation to the container (passed through to the OCI runtime) (default map[])
  -a, --attach list                      Attach to STDIN, STDOUT or STDERR
      --blkio-weight uint16              Block IO (relative weight), between 10 and 1000, or 0 to disable (default 0)
      --blkio-weight-device list         Block IO weight (relative device weight) (default [])
      --cap-add list                     Add Linux capabilities
      --cap-drop list                    Drop Linux capabilities
      --cgroup-parent string             Optional parent cgroup for the container
      --cgroupns string                  Cgroup namespace to use (host|private)
......

nginx容器示例

echo "111" > /data/nginx/index.html

docker run --name nginx -v /data/nginx/:/usr/share/nginx/html -p 8001:80 -d nginx

--name: 设置容器名称为nginx
-v :将宿主机目录/data/nginx与容器目录/usr/share/nginx/html映射
-p :将容器内80端口映射到宿主机8001端口上
-d : 后台运行
nginx : 使用nginx:latest最新镜像版本,tag为latest,在创建时可省略
☁  ~  docker ps                                  
CONTAINER ID   IMAGE      COMMAND                   CREATED         STATUS          PORTS                                                  NAMES
956d0e3e5f3e   nginx      "/docker-entrypoint.…"    2 seconds ago   Up 1 second     0.0.0.0:8888->80/tcp, :::8888->80/tcp                  nginx



此时在浏览器或者终端curl访问:
http://宿主机IP:8888  即可看到111的返回内容

常见用法

1.修改正在运行的容器名称
docker rename [容器ID] [新的容器名称]
2.更新容器参数
docker update --restart=always [容器ID]
3.复制宿主机文件(夹)到容器内
# docker cp file [容器名称或容器ID]:[容器内目录]
# docker cp -r folder [容器名称或容器ID]:[容器内目录]

# 复制test文件到nginx容器内的/tmp目录
docker cp test nginx:/tmp
4.复制容器内文件(夹)到宿主机
# docker cp [容器名称或容器ID]:[容器内目录文件] [宿主机目录]
# docker cp -r [容器名称或容器ID]:[容器内目录] [宿主机目录]
docker cp nginx:/tmp/test /data/nginx/
5.镜像的导入导出
# docker save -o [镜像名称].tar 镜像名称:tag  
# 导出到宿主机/data/目录
docker save -o /data/nginx.tar nginx:latest

# docker load -i [镜像名称].tar 
# 导入镜像
docker load -i nginx.tar
6.打包容器成镜像
# docker commmit [容器ID] [镜像名称]:[tag]
# 打包以后可在镜像列表中查看 docker images 
docker commit 956d0e3e5f3e mynginx:v1 
7.查看日志
# 查看容器滚动日志 ,可配合grep筛选日志
docker logs -f [容器名称]
8.执行容器内部命令
☁  ~  docker exec -it nginx bash -c "echo 111"
111
9.[定时任务场景] 容器执行一次就删除
docker run --rm -v /etc/hosts:/etc/hosts \
            -v /data/www/test/:/app/test \
            -w /app/test alpine-python-3.8.10 \
            python scripts/test.py


命令详解:
-v /etc/hosts:/etc/hosts                        # 映射宿主机host到容器内
-v /data/www/test/:/app/test                    # 代码目录映射
-w /app/test                                    # 指定容器内工作目录
python scripts/test.py                          # 使用容器内python解释器执行脚本
alpine-python-3.8.10                            # 容器使用的镜像
--rm                                            # 在命令执行完以后就删除容器所有信息

原文地址:https://blog.csdn.net/qq_39965424/article/details/142984805

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!