docker的安装及docker常用命令

环境介绍

docker卸载

# 卸载docker
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
#卸载docker
sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
# 删除镜像、容器、卷、自定义配置
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

docker安装

# 更新opt
sudo apt-get update
# 安装ca认证和curl传输工具
sudo apt-get install ca-certificates curl
# 创建一个目录/etc/apt/keyrings
sudo install -m 0755 -d /etc/apt/keyrings
# 下载 Docker 在 Ubuntu 系统上使用的 GPG 密钥
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
# 将秘钥设置为只读
sudo chmod a+r /etc/apt/keyrings/docker.asc
# 将 Docker 的软件源添加到 APT 软件包管理器的源列表中,并将其保存到 /etc/apt/sources.list.d/docker.list 文件中
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 更新opt
sudo apt-get update

# 安装最新版本docker引擎
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 安装指定版本docker引擎
#查看版本信息
apt-cache madison docker-ce | awk '{ print $3 }'
#安装指定版本的docker引擎
VERSION_STRING=5:26.1.0-1~ubuntu.24.04~noble
sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin
# 验证docker安装成功
sudo docker run hello-world

docker镜像命令

docker仓库地址:https://registry.hub.docker.com/,大概率需要科学上网。

查看docker可用的镜像

docker images

查看docker可安装的镜像

docker search {需要安装的镜像名称}

安装镜像

docker pull {需要安装的镜像名称}:{版本}

删除镜像

docker rmi {镜像名称或镜像ID}

docker容器命令

-i: 交互式操作
-t: 终端
-d: 后台运行
-P:将容器内部使用的网络端口随机映射到我们使用的主机上。
-p:将容器内部使用的网络端口指定映射到我们使用主机上
-v:将主机数据卷挂载至容器内的某目录
-e:增加临时配置
–name: 给容器指定一个名称
–restart=always:容器自动重启

查看容器

## 查看启动的容器
docker ps
# 查看所有容器
docker ps -a

启动容器

# 启动容器
docker run {镜像名称或镜像ID}
# 创建一个交互式的容器并启动一个shell会话
docker run -it {镜像名称或镜像ID} /bin/bash
# 后台运行容器
docker run -itd {镜像名称或镜像ID} /bin/bash
#后台运行一个容器并将容器端口映射到主机指定端口
docker run -d -p 5000:5000 {镜像名称或镜像ID}
# 指定运行的容器使用主机网络
docker run -d --network=host --name={容器名称} {镜像名称或镜像ID}

# 启动一个已停止的容器
docker start {容器名称或容器ID}
# 重启一个已停止的容器
docker restart {容器名称或容器ID}

启动示例

#myslq
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
--network=host \
--restart=always \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7

进入容器内部

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

停止容器

docker stop {容器名称或容器ID}

删除容器

docker rm -f {容器名称或容器ID}

docker网络命令

创建docker网络

# 创建一个桥接网络
docker network create -d bridge {网络名称}
# 创建一个主机网络
docker network create -d host {网络名称}

查看docker网络

docker network ls

删除docker网络

docker network rm {网络名称或网络ID}

docker其他命令

启动docker

systemctl start docker

开机docker自启动

systemctl enable docker

重启docker

systemctl restart docker

查看docker版本信息

docker -version

查看docker系统信息

docker info

查看docker容器日志

# 实时跟踪容器日志
docker logs -f {容器名称或容器id}
# 显示最近100行容器日志
docker logs --tail 100 {容器名称或容器id}

docker compose安装

# 更新apt
sudo apt-get update
# 安装compose插件
sudo apt-get install docker-compose-plugin
# 验证安装及查看版本
docker compose version

docker compose更新

# 更新apt
sudo apt-get update
# 安装compose插件
sudo apt-get install docker-compose-plugin
# 验证安装及查看版本
docker compose version

docker compose卸载

# 卸载docker compose
sudo apt-get remove docker-compose-plugin
# 删除docker compose相关配置
rm /usr/local/lib/docker/cli-plugins/docker-compose

docker compose启动

# 启动所有容器
docker-compose up
# 后台启动所有容器
docker-compose up -d

docker compose查看容器

docker-compose ps

docker compose停止容器

# 停止所有容器
docker-compose stop
#停止并删除所有容器
docker-compose down

docker compose启动容器

docker-compose start

docker compose重启容器

docker-compose restart

docker compose删除容器

docker-compose rm 

docker compose yaml配置示例

挂载时要将主机的文件权限放开

chmod 777 {fileName}

compose配置文件

services:
  redis:
    container_name: redis_env
    image: redis:6.0
    command: redis-server /etc/redis.conf
    ports:
      - "6379:6379"
    networks:
      - bridge
    volumes:
      - /home/docker/environment/redis/conf/redis.conf:/etc/redis.conf
      - /home/docker/environment/redis/data:/data
      - /home/docker/environment/redis/log/redis.log:/var/redis.log
    restart: always

networks:
  bridge:
    driver: bridge

参考文章:
docker官网
https://geek-docs.com/redis/redis-ask-answer/645_redis_run_redis_with_persistent_storage_using_dockercompose.html
https://blog.csdn.net/Fly_wd/article/details/133870918

相关推荐

  1. docker安装docker命令

    2024-06-08 02:10:03       8 阅读
  2. Centos docker安装命令

    2024-06-08 02:10:03       18 阅读
  3. [Docker] 命令

    2024-06-08 02:10:03       27 阅读
  4. docker 命令

    2024-06-08 02:10:03       32 阅读
  5. docker 命令

    2024-06-08 02:10:03       35 阅读
  6. Docker 命令

    2024-06-08 02:10:03       35 阅读
  7. docker 命令

    2024-06-08 02:10:03       38 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-08 02:10:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-08 02:10:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-08 02:10:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-08 02:10:03       20 阅读

热门阅读

  1. 新一代AI的崛起——GPT-4o深度评析

    2024-06-08 02:10:03       8 阅读
  2. Debezium日常分享系列之:Debezium 2.7.0.Beta1发布

    2024-06-08 02:10:03       6 阅读
  3. 面试题--this关键字

    2024-06-08 02:10:03       10 阅读
  4. Vue3视图渲染技术

    2024-06-08 02:10:03       6 阅读
  5. Python怎么把数据从CSV文件导入到MySQL数据库?

    2024-06-08 02:10:03       12 阅读
  6. 【Qt快速入门(二)】- Qt 整体目录结构

    2024-06-08 02:10:03       12 阅读
  7. 深入探讨Qt中的QVariant

    2024-06-08 02:10:03       10 阅读
  8. ChatGPT的基本原理

    2024-06-08 02:10:03       8 阅读
  9. 是时候让临床预测模型进入临床实践

    2024-06-08 02:10:03       10 阅读
  10. Elasticsearch搜索优化-自定义路由规划(routing)

    2024-06-08 02:10:03       10 阅读