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简化容器化应用程序的部署和管理过程的工具

相关推荐
努力努力再努力wz2 分钟前
【Docker入门系列】从 LXC 到 containerd:一文梳理 Docker 容器运行时架构演进与轻量化原理
docker·eureka·架构
geovindu2 分钟前
java: Task Scheduler
java·开发语言·后端
神奇小梵7 分钟前
java的特殊语法点,与常规语言相异的点
java·开发语言
无巧不成书021822 分钟前
Tomcat 下载后使用全指南:解压、环境配置、启动验证与常见问题排查
java·tomcat
Wang's Blog26 分钟前
Java框架快速入门: Spring Security+OAuth2之多因子认证缓存服务
java·spring·缓存
wuminyu39 分钟前
Kafka配置TLS/SSL加密传输时零拷贝失效分析
java·linux·c语言·jvm·c++
边境悍匪44 分钟前
蜗牛学苑 Java 智能体学习 Day41|ElementPlus 布局、Vue‑Router 登录、Axios 思维导图复盘
java·vue.js·学习
心中有你02141 小时前
Java Swing实现校园最短路径导航系统(Dijkstra算法完整源码+详细解析)
java·开发语言·算法
重生之小比特1 小时前
【Java SE】数组的定义与使用
java·开发语言
摆烂z1 小时前
定时任务同步数据--续跑&重试
java·mybatis·ai编程