个人笔记
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

5.2 KiB

常用命令

查看版本

docker version

从Docker文件构建镜像

docker build -t image-name docker-file-location

-t:它用于指定使用提供的名称来标记Docker映像。

运行镜像/创建容器

docker run -d image-name

-d:用于创建守护程序进程

查看可用的镜像

docker images

查看运行容器

docker ps -l		//显示最新的可用容器
docker ps -a		//显示所有可用的容器

运行与停止容器

docker start container_id
docker stop container_id
docker restart container_id

进入容器

docker exec -it container-id bash

删除容器

docker rm -f container_id			//删除指定容器
docker rm $(docker ps -a -q)		//删除所有容器

删除镜像

docker rmi image-name				//删除指定镜像
docker rmi $(docker images -q)		//删除所有镜像
docker rmi -r $(docker images -q)	//强制删除所有镜像

修改容器端口映射

  • 停止容器

  • 查找容器ID

    docker inspect nginx-alpine
    

    容器ID为:004d95fb40fd811128a5fb6c6c6ae8fab51e234779f92e5a91d0d84e0a80cb1c

  • 进入容器目录

    cd cd /home/docker/containers/004d95fb40fd811128a5fb6c6c6ae8fab51e234779f92e5a91d0d84e0a80cb1c
    
  • 修改容器配置

    vim hostconfig.json
    

    其中PortBindings属性即为容器端口映射配置

  • 修改后重启容器

容器与宿主机文件拷贝

  • 容器 → 宿主机

    docker cp <容器名/ID>:<容器文件路径> <宿主机文件夹路径>
    
  • 宿主机 → 容器

    docker cp <宿主机文件路径> <容器名/ID>:<容器文件夹路径>
    

将容器打包为镜像

 docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
Option 功能
-a 指定新镜像作者
-c 使用 Dockerfile 指令来创建镜像
-m 提交生成镜像的说明信息
-p 在 commit 时,将容器暂停

其他

docker container update

更新一个或多个容器的配置

docker container update [OPTIONS] CONTAINER [CONTAINER...]
名称,简写 默认值 描述
--blkio-weight 0 阻塞IO(相对权重),介于101000之间,或0禁用(默认为0)
--cpu-period 0 限制CPU CFS(完全公平的调度程序)周期
--restart 重新启动在容器退出时应用的策略
--memory, -m 内存限制
--kernel-memory 内核内存限制
--memory-swap 交换限制等于内存加交换:’-1‘以启用无限制的交换
--memory-reservation 内存软限制

docker compose

Compose 安装

Linux 上我们可以从 Github 上下载它的二进制包来使用,最新发行的版本地址:https://github.com/docker/compose/releases

运行以下命令以下载 Docker Compose 的当前稳定版本:

curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

要安装其他版本的 Compose,请替换 v2.2.2。

Docker Compose 存放在 GitHub,不太稳定。也可以通过执行下面的命令,高速安装 Docker Compose。

curl -L https://get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

给予执行权限 创建软连接

chmod +x /usr/local/bin/docker-compose
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

Compose命令

# 默认使用docker-compose.yml构建镜像
$ docker-compose build
$ docker-compose build --no-cache # 不带缓存的构建

# 指定不同yml文件模板用于构建镜像
$ docker-compose build -f docker-compose1.yml

# 列出Compose文件构建的镜像
$ docker-compose images                          

# 启动所有编排容器服务
$ docker-compose up -d

# 查看正在运行中的容器
$ docker-compose ps 

# 查看所有编排容器,包括已停止的容器
$ docker-compose ps -a

# 进入指定容器执行命令
$ docker-compose exec nginx bash 
$ docker-compose exec web python manage.py migrate --noinput

# 查看web容器的实时日志
$ docker-compose logs -f web

# 停止所有up命令启动的容器
$ docker-compose down 

# 停止所有up命令启动的容器,并移除数据卷
$ docker-compose down -v

# 重新启动停止服务的容器
$ docker-compose restart web

# 暂停web容器
$ docker-compose pause web

# 恢复web容器
$ docker-compose unpause web

# 删除web容器,删除前必需停止stop web容器服务
$ docker-compose rm web  

# 查看各个服务容器内运行的进程 
$ docker-compose top