温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Docker常用命令分享

发布时间:2021-07-30 15:15:25 来源:亿速云 阅读:187 作者:chen 栏目:云计算

Docker常用命令分享

目录

  1. Docker简介
  2. Docker安装与配置
  3. Docker镜像管理
  4. Docker容器管理
  5. Docker网络管理
  6. Docker数据管理
  7. Docker Compose
  8. Docker Swarm
  9. Docker安全
  10. Docker常用命令总结

Docker简介

Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似iPhone的app),更重要的是容器性能开销极低。

Docker从17.03版本之后分为CE(Community Edition: 社区版)和EE(Enterprise Edition: 企业版)。我们用社区版就可以了。

Docker安装与配置

安装Docker

在Ubuntu上安装Docker:

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

在CentOS上安装Docker:

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io

启动Docker

sudo systemctl start docker

设置Docker开机自启

sudo systemctl enable docker

配置Docker镜像加速

编辑/etc/docker/daemon.json文件,添加以下内容:

{
  "registry-mirrors": ["https://your-mirror-url"]
}

然后重启Docker服务:

sudo systemctl daemon-reload
sudo systemctl restart docker

Docker镜像管理

搜索镜像

docker search <image_name>

拉取镜像

docker pull <image_name>:<tag>

列出本地镜像

docker images

删除本地镜像

docker rmi <image_id>

构建镜像

docker build -t <image_name>:<tag> .

推送镜像到仓库

docker push <image_name>:<tag>

Docker容器管理

运行容器

docker run -d --name <container_name> <image_name>:<tag>

列出运行中的容器

docker ps

列出所有容器

docker ps -a

启动容器

docker start <container_id>

停止容器

docker stop <container_id>

重启容器

docker restart <container_id>

删除容器

docker rm <container_id>

进入容器

docker exec -it <container_id> /bin/bash

查看容器日志

docker logs <container_id>

查看容器详细信息

docker inspect <container_id>

复制文件到容器

docker cp <local_path> <container_id>:<container_path>

从容器复制文件

docker cp <container_id>:<container_path> <local_path>

Docker网络管理

列出网络

docker network ls

创建网络

docker network create <network_name>

查看网络详细信息

docker network inspect <network_name>

连接容器到网络

docker network connect <network_name> <container_id>

断开容器与网络的连接

docker network disconnect <network_name> <container_id>

删除网络

docker network rm <network_name>

Docker数据管理

创建数据卷

docker volume create <volume_name>

列出数据卷

docker volume ls

查看数据卷详细信息

docker volume inspect <volume_name>

删除数据卷

docker volume rm <volume_name>

挂载数据卷到容器

docker run -d --name <container_name> -v <volume_name>:<container_path> <image_name>:<tag>

挂载主机目录到容器

docker run -d --name <container_name> -v <host_path>:<container_path> <image_name>:<tag>

Docker Compose

安装Docker Compose

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

使用Docker Compose启动服务

docker-compose up -d

停止并删除服务

docker-compose down

查看服务日志

docker-compose logs

重启服务

docker-compose restart

查看服务状态

docker-compose ps

Docker Swarm

初始化Swarm

docker swarm init

加入Swarm集群

docker swarm join --token <token> <manager_ip>:<port>

列出Swarm节点

docker node ls

创建服务

docker service create --name <service_name> <image_name>:<tag>

列出服务

docker service ls

查看服务详细信息

docker service inspect <service_name>

扩展服务

docker service scale <service_name>=<replicas>

删除服务

docker service rm <service_name>

Docker安全

限制容器资源

docker run -d --name <container_name> --memory="512m" --cpus="1" <image_name>:<tag>

设置容器用户

docker run -d --name <container_name> --user <user_id> <image_name>:<tag>

设置容器只读

docker run -d --name <container_name> --read-only <image_name>:<tag>

设置容器安全选项

docker run -d --name <container_name> --security-opt="no-new-privileges" <image_name>:<tag>

设置容器Capabilities

docker run -d --name <container_name> --cap-drop="ALL" --cap-add="NET_ADMIN" <image_name>:<tag>

Docker常用命令总结

镜像管理

  • docker search <image_name>:搜索镜像
  • docker pull <image_name>:<tag>:拉取镜像
  • docker images:列出本地镜像
  • docker rmi <image_id>:删除本地镜像
  • docker build -t <image_name>:<tag> .:构建镜像
  • docker push <image_name>:<tag>:推送镜像到仓库

容器管理

  • docker run -d --name <container_name> <image_name>:<tag>:运行容器
  • docker ps:列出运行中的容器
  • docker ps -a:列出所有容器
  • docker start <container_id>:启动容器
  • docker stop <container_id>:停止容器
  • docker restart <container_id>:重启容器
  • docker rm <container_id>:删除容器
  • docker exec -it <container_id> /bin/bash:进入容器
  • docker logs <container_id>:查看容器日志
  • docker inspect <container_id>:查看容器详细信息
  • docker cp <local_path> <container_id>:<container_path>:复制文件到容器
  • docker cp <container_id>:<container_path> <local_path>:从容器复制文件

网络管理

  • docker network ls:列出网络
  • docker network create <network_name>:创建网络
  • docker network inspect <network_name>:查看网络详细信息
  • docker network connect <network_name> <container_id>:连接容器到网络
  • docker network disconnect <network_name> <container_id>:断开容器与网络的连接
  • docker network rm <network_name>:删除网络

数据管理

  • docker volume create <volume_name>:创建数据卷
  • docker volume ls:列出数据卷
  • docker volume inspect <volume_name>:查看数据卷详细信息
  • docker volume rm <volume_name>:删除数据卷
  • docker run -d --name <container_name> -v <volume_name>:<container_path> <image_name>:<tag>:挂载数据卷到容器
  • docker run -d --name <container_name> -v <host_path>:<container_path> <image_name>:<tag>:挂载主机目录到容器

Docker Compose

  • docker-compose up -d:使用Docker Compose启动服务
  • docker-compose down:停止并删除服务
  • docker-compose logs:查看服务日志
  • docker-compose restart:重启服务
  • docker-compose ps:查看服务状态

Docker Swarm

  • docker swarm init:初始化Swarm
  • docker swarm join --token <token> <manager_ip>:<port>:加入Swarm集群
  • docker node ls:列出Swarm节点
  • docker service create --name <service_name> <image_name>:<tag>:创建服务
  • docker service ls:列出服务
  • docker service inspect <service_name>:查看服务详细信息
  • docker service scale <service_name>=<replicas>:扩展服务
  • docker service rm <service_name>:删除服务

Docker安全

  • docker run -d --name <container_name> --memory="512m" --cpus="1" <image_name>:<tag>:限制容器资源
  • docker run -d --name <container_name> --user <user_id> <image_name>:<tag>:设置容器用户
  • docker run -d --name <container_name> --read-only <image_name>:<tag>:设置容器只读
  • docker run -d --name <container_name> --security-opt="no-new-privileges" <image_name>:<tag>:设置容器安全选项
  • docker run -d --name <container_name> --cap-drop="ALL" --cap-add="NET_ADMIN" <image_name>:<tag>:设置容器Capabilities

结语

Docker作为一种轻量级的虚拟化技术,已经成为现代应用开发和部署的重要工具。通过掌握Docker的常用命令,开发者可以更高效地管理容器、镜像、网络和数据卷,从而提升开发和运维的效率。希望本文的Docker常用命令分享能够帮助读者更好地理解和使用Docker,在实际工作中发挥其强大的功能。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI