Docker(Centos7+)

先确定是否 Centos 7 及以上的版本

查看是否 ping 通外网

linux

centos7运行下面的代码,基本上都可以正常安装

复制代码
# 删除之前的docker残留
yum -y remove docker*

yum install -y yum-utils

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

yum install docker-ce docker-ce-cli containerd.io -y
# 启动docker
systemctl start docker
# 开机启动
systemctl enable docker

配置镜像源

windows下

复制代码
{
  "registry-mirrors": [
    "http://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://cr.console.aliyun.com",
    "https://mirror.ccs.tencentyun.com"
  ]
}

linux下

创建文件

vim /etc/docker/daemon.json

把上面的镜像源放里面⬆️

复制代码
重新加载
systemctl daemon-reload
重启docker
systemctl restart docker

cat /etc/docker/daemon.json

如果 daemon.json 文件中配置了镜像源,它可能会看起来像这样:

复制代码
{  
  "registry-mirrors": ["https://mirror.example.com"]  
}

不是所有的 Docker 安装都会使用 daemon.json 文件来配置镜像源。有些情况下,镜像源可能是通过 Docker 命令行的 --registry-mirror 参数来指定的,但这通常是在启动 Docker 守护进程时指定的,而不是在运行时。

镜像的基本操作

帮助命令

  • docker version : 查看 Docker 版本信息
  • docker info : 查看 Docker 信息
  • docker --help : 查看帮助信息

拉取nginx镜像

复制代码
[root@yanmk ~]# docker pull image_name:tag

检索镜像

复制代码
docker search image_name:tag

列表

复制代码
docker images

[root@yanmk ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
nginx        latest    e784f4560448   3 weeks ago   188MB

删除镜像

复制代码
docker rmi image_id

相同名称的镜像可以存在多个,即需要不同的tags版本

运行一个容器

复制代码
[root@yanmk ~]# docker run -d -p 8899:80 nginx
#-p 8899:80 将容器的80端口映射到宿主机的8899端口
759dd109e0c3e05d588ca922ca6171c1173187bb71667ac104c17cbcb68236d0

前提 : 有镜像才能创建容器, 可以先下载一个: docker pull nginx

  • 格式 : docker run 参数 镜像名称 / 镜像 ID 执行的命令(默认执行指定的命令)
  • 参数:

|------------|--------------------------------------|
| -d | 以守护进程的方式运行 |
| -p | 指定端口映射(格式:宿主主机端口: 容器向外暴露的端口) |
| -P | 随机端口映射 |
| --name | 指定容器的名称(同一台宿主主机上的 docker 名称不能重复) |
| --rm | 当一个容器结束了它的生命周期,就立即删除 |
| -v | 映射存储卷(可以映射文件及文件夹) |
| -i | 打开标准输出(通常与 t 连用) |
| -t | 创建一个伪终端 |
| -e | 在容器内设置一个环境变量 |

  • 示例

    "-d","-p"
    docker run -d -p 8899:80 nginx:1.19.2
    "-P"
    docker run -d -P nginx:1.19.2
    "--name"
    docker run -d --name nginx_name -P nginx:1.19.2
    "--rm"
    docker run -d --rm --name nginx_rm nginx:1.19.2
    "-v"
    docker run -d -v /root/test:/usr/share/nginx/html nginx:1.19.2
    "-e"
    docker run -d -e NGINX_NAME=nginx nginx:1.19.2

  • 本地查看

  • 浏览器查看

ps : docker 当中至少有一个应用程序运行在前台

列出当前所有正在运行的容器

复制代码
docker ps

Docker Compose

Docker Compose简化容器化应用程序的部署和管理过程的工具

相关推荐
程序猿阿伟32 分钟前
《一套完整方法论:搞定图形应用的Docker镜像优化》
数据库·docker·容器
我材不敲代码1 小时前
Python 函数核心:位置参数与关键字参数详解
java·前端·python
java_logo1 小时前
2026 Docker 国内镜像加速配置教程
运维·docker·容器·docker镜像·docker镜像源·docker镜像加速·docker镜像国内库
qq_333120971 小时前
C++高并发内存池的整体设计和实现思路_C 语言
java·c语言·c++
mh_f1 小时前
33.批量通过GET链接下载图片到指定文件夹下
java
金銀銅鐵1 小时前
[Java] 如何理解 class 文件中方法的 access flags?
java·后端
智研数智工坊1 小时前
SpringBoot4.0.6 + Security7.x + JWT 最新完整实战|无状态权限认证、统一异常处理、可直接落地
java·spring boot·spring security·jwt·权限认证
DIY源码阁1 小时前
JavaSwing宿舍管理系统 - MySQL版
java·数据库·mysql·eclipse
Han_han9191 小时前
递归相关题目:
java
kTR2hD1qb2 小时前
Claude Code Skill的介绍与使用
java·前端·数据库·人工智能