编辑
2024-11-03
云计算-容器化
00
请注意,本文编写于 522 天前,最后修改于 0 天前,其中某些信息可能已经过时。

目录

安装依赖包
添加Docker软件包源
关闭测试版本list(只显示稳定版)
更新yum包索引
安装Docker
直接安装DockerCE
指定版本安装
配置国内镜像源
启动docker
搭建私有镜像仓库
推送镜像到私有仓库
常用命令
查看容器占用的内存
常用中间件
register2 官方镜像仓库
gitea 迷你gitlab

Docker 是当前主流的容器化引擎,本文将详细介绍在 CentOS 7 环境下安装配置 Docker 的完整流程。核心内容包括:安装依赖包(yum-utils、device-mapper-persistent-data、lvm2)、添加阿里云 Docker CE 软件源、更新 YUM 包索引、安装指定版本 Docker CE(如 18.06.3 或 24.0.6)、配置国内镜像加速器(DaoCloud、阿里云)、启动并设置 Docker 开机自启。同时提供私有镜像仓库搭建方案:拉取 registry 镜像、启动容器并挂载数据卷、配置 insecure-registries 信任私有仓库地址、推送镜像到私有仓库及验证。此外还附带了 Docker 常用命令(如 docker stats 查看容器内存占用)以及常用中间件容器部署示例(registry 镜像仓库、gitea 代码托管)。

本文适用于需要在 CentOS 7 上部署 Docker 环境及私有镜像仓库的运维开发人员。

安装依赖包

yum install -y yum-utils device-mapper-persistent-data lvm2

添加Docker软件包源

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

关闭测试版本list(只显示稳定版)

sudo yum-config-manager --enable docker-ce-edge sudo yum-config-manager --enable docker-ce-test

更新yum包索引

yum makecache fast

安装Docker

直接安装DockerCE

will always install the highest possible version,可能不符合你的需求

yum install docker-ce -y

指定版本安装

# 找到需要安装的 yum list docker-ce --showduplicates |sort -r |grep 'docker-ce-stable' yum install docker-ce-18.06.3.ce -y #yum install docker-ce-24.0.6.ce -y

配置国内镜像源

cat > /etc/docker/daemon.json <<EOF { "registry-mirrors": [ "https://j6dalcd1.mirror.aliyuncs.com" "https://docker.1ms.run", "https://docker-0.unsee.tech", "https://docker.m.daocloud.io" ] } EOF

启动docker

systemctl start docker & systemctl enable docker

搭建私有镜像仓库

# 1.拉取私有仓库镜像 docker pull registry # 2.启动私有仓库容器,宿主机port:容器port docker run -d -p 5000:5000 --restart=always --name registry -v /mnt/registry:/var/lib/registry registry:2 # 3.打开浏览器,输入:http://宿主机IP:5000/v2/_catalog # 看到{"repositories":[]}表示私有仓库搭建成功 # 4.修改daemon.json,在该文件中添加一个key即可,用于让docker信任私有仓库地址 # vim /etc/docker/daemon.json "insecure-registries": ["宿主机IP:5000"] # 5.重启docker服务 systemctl daemon-reload systemctl restart docker

10014.png

推送镜像到私有仓库

# 本地镜像打标签"drangonwell8:release-20230804" docker tag drangonwell8:release 192.168.44.10:5000/drangonwell8:release-20230804 # 推送镜像 docker push 192.168.44.10:5000/drangonwell8:release-20230804 # 验证是否推送成功 http://192.168.44.10:5000/v2/drangonwell8/tags/list

常用命令

查看容器占用的内存

shell
docker stats --no-stream --format "table {{.Name}}\t{{.Container}}\t{{.MemUsage}}"

10000.png

常用中间件

register2 官方镜像仓库

shell
docker run --detach \ --name registry \ --volume /root/myapps/registry/data/:/data \ --volume /root/myapps/registry/auth/:/auth/ \ --volume /root/myapps/registry/registry/:/var/lib/registry/ \ -p 5000:5000 \ --restart always \ --privileged=true \ registry:2.8.3

gitea 迷你gitlab

shell
docker run --detach \ --name gitea \ --volume ./data:/data \ --volume /etc/timezone:/etc/timezone:ro \ --volume /etc/localtime:/etc/localtime:ro \ -p 3000:3000 \ -p 3022:22 \ --restart always \ gitea/gitea:1.21.10
如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:Odboy

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC 4.0 BY-SA 许可协议。转载请注明出处!