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

相关推荐
一个public的class3 分钟前
什么是 Java 泛型
java·开发语言·后端
士别三日&&当刮目相看5 分钟前
JAVA学习*Object类
java·开发语言·学习
快来卷java26 分钟前
MySQL篇(一):慢查询定位及索引、B树相关知识详解
java·数据结构·b树·mysql·adb
凸头1 小时前
I/O多路复用 + Reactor和Proactor + 一致性哈希
java·哈希算法
慵懒学者1 小时前
15 网络编程:三要素(IP地址、端口、协议)、UDP通信实现和TCP通信实现 (黑马Java视频笔记)
java·网络·笔记·tcp/ip·udp
anda01091 小时前
11-leveldb compact原理和性能优化
java·开发语言·性能优化
爱编程的王小美2 小时前
Docker基础详解
运维·docker·容器
白夜易寒2 小时前
Docker学习之容器虚拟化与虚拟机的区别(day11)
学习·docker·容器
Pasregret2 小时前
04-深入解析 Spring 事务管理原理及源码
java·数据库·后端·spring·oracle
Micro麦可乐2 小时前
最新Spring Security实战教程(七)方法级安全控制@PreAuthorize注解的灵活运用
java·spring boot·后端·spring·intellij-idea·spring security