最新OpenEuler-24(欧拉)快速部署docker及harbor
创作时间:
作者:
@小白创作中心
最新OpenEuler-24(欧拉)快速部署docker及harbor
引用
CSDN
1.
https://m.blog.csdn.net/KAKGM/article/details/141202822
本文详细介绍了在OpenEuler-24系统上快速部署Docker和Harbor的过程。从系统基础操作、Docker安装、搭建本地私有仓库(Harbor)到Harbor与Docker的联动配置,每一步都配有详细的命令和说明,适合有一定Linux基础的读者学习参考。
一、系统基础操作
1、新装操作系统自启动防火墙,需关闭
systemctl disable --now firewalld.service
Removed "/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service".
Removed "/etc/systemd/system/multi-user.target.wants/firewalld.service".
2、关闭SElinux
sed -i 's/=enforcing/=disabled/' /etc/selinux/config
setenforce 0
3、添加docker-社区版仓库,此处使用的华为的yum仓库,将版本改为centos9的yum源
dnf config-manager --add-repo=https://repo.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo
sed -i 's+download.docker.com+repo.huaweicloud.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
sed -i 's+$releasever+9+' /etc/yum.repos.d/docker-ce.repo
dnf makecache
二、docker安装
1、安装docker,此处为方便,用通用符安装了所有docker相关的服务,读者再次可选择性安装docker-ce、docker-compose等软件。
dnf -y install docker*
2、添加加速仓库,加速仓库可能存在过期特性,读者再此可据情况更换
cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://docker.m.daocloud.io"]
}
3、docker开启自启动
systemctl enable --now docker.service
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /usr/lib/systemd/system/docker.service.
4、检查已安装Docker版本是否正常
docker version
Client: Docker Engine - Community Version: 27.1.1
API version: 1.46
Go version: go1.21.12
Git commit: 6312585
Built: Tue Jul 23 19:58:57 2024
OS/Arch: linux/amd64
Context: default
Server: Docker
Engine - Community
Engine: Version: 27.1.1
API version: 1.46 (minimum version 1.24)
Go version: go1.21.12
Git commit: cc13f95
Built: Tue Jul 23 19:57:11 2024
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.7.19
GitCommit: 2bf793ef6dc9a18e00cb12efb64355c2c9d5eb41
runc:
Version: 1.7.19
GitCommit: v1.1.13-0-g58aa920
docker-init:
Version: 0.19.0 G
itCommit: de40ad0
5、启动一个示例容器
docker run --name=nginx -d -p 900:80 nginx
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ad6352a3e7de nginx "/docker-entrypoint.…" 9 seconds ago Up 7 seconds 0.0.0.0:900->80/tcp, :::900->80/tcp nginx
三、搭建本地私有仓库(Harbor)
1、搭建harbor本地仓库,此处为选择最新版的harbor离线安装包harbor-offline-installer-v2.11.1-rc1.tgz,下面是在github中下载此包的流程
2、解压harbor的离线安装包至/usr/local/路径下
tar zxvf harbor-offline-installer-v2.11.1-rc1.tgz -C harbor /usr/local/
3、修改harbor配置文档,此处仅展示主要部分,读者可据要求更改其它参数,请注意配置文件中每一行首字母前空格。此配置开启了ssl模式,此处采用自签名证书。
cat /usr/local/harbor/harbor.yml
hostname: 192.168.137.10
http:
port: 8800
https:
port: 8443
certificate: /usr/local/harbor/certs/harbor.crt
private_key: /usr/local/harbor/certs/harbor.key
4、自签证书生成
mkdier /usr/local/harbor/certs
openssl req -new -x509 -keyout /usr/local/harbor/certs/harbor.key -out /usr/local/harbor/certs/harbor.crt -days 365 -passout pass:harbor -subj "/C=cn/ST=guizhou/L=guizhou/O=personal/OU=personal/CN=openEuler24"
5、刷新harbor配置文件并部署harbor仓库,在此处需要停掉之前启用的nginx服务,因为部署harbor时会启用一个新的nginx容器,你至少保证你之前启用的nginx容器名称和端口于harbor使用的nginx不冲突即可
cd /usr/local/harbor/
./prepare
./install.sh
6、harbor安装成功页面
7、浏览器访问一下,用户名admin,密码Harbor12345(配置文件中有)
8、添加一个仓库
四、Harbor与Docker进行联动
1、将harbor本地仓库配置在docker仓库中,在daemon.json中配置即可
{
"registry-mirrors": ["https://docker.m.daocloud.io"],
"insecure-registries": ["192.168.137.10:8443"]
}
2、重启docker
systemctl daemon-reload
systemctl restart docker.service
3、登录本地仓库
docker login 192.168.137.10:8443
Username:
admin Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/
#credential-stores Login Succeeded
4、制作一个自定义nginx镜像
mkdir /home/dockerfile
cd /home/dockerfile
cat Dockerfile
FROM nginx
RUN echo '<h1> This is OpenEuler-24.03 Nginx-service!!! </h1>' >/usr/share/nginx/html/index.html
docker build -t nginx:OpenEuler .
5、将制作的nginx:OpenEuler镜像上传至本地harbor仓库,需给镜像打标签
docker tag nginx:OpenEuler 192.168.137.10:8443/harbor/nginx:OpenEuler
docker push 192.168.137.10:8443/harbor/nginx:OpenEuler
The push refers to repository [192.168.137.10:8443/harbor/nginx]
47a59b4b527d: Pushed
b90d53c29dae: Pushed

79bfdc61ef6f: Pushed
0c95345509b7: Pushed
14dc34bc60ae: Pushed
45878e4d8341: Pushed
9aa78b86f4b8: Pushed
9853575bc4f9: Pushed
OpenEuler: digest: sha256:d24c28b10520c110d7c18078cc0b552b5a0fb1235dbab217d27f0539ca53e1a2 size: 1985
6、运行该容器
docker run --name=nginx-OpenEuler -d -p 8383:80 nginx:OpenEuler
7、浏览器访问该镜像
热门推荐
乾隆为什么主动退位?退位的原因是什么?
上海:改革创新不断优化 提升效率持续发力—精细化服务激发城市发展新动能
蒸面条菜怎么蒸出来松散不粘?
辣椒拌面制作教程:简单几步做出美味香辣拌面
Win11系统中如何管理用户账户,如何设置Windows用户权限?
三亚适合几月份去旅游最好,什么时候是去三亚度假的最好时候
爷爷奶奶对孙子的祝福语大全 爷爷给孙子的祝福语
陈醋和白醋有什么区别
文化认同:超越表层的文化符号,游戏还能传播什么?
“热死人”不是开玩笑,高温烤出“热射病”
168家企业齐聚武汉科技大学,学子们的求职新趋势是什么?
费用报销管理制度及流程在不同行业中有何不同?
长沙地铁7号线扩建计划:未来将成跨市交通枢纽
西安回民街:美食、文化與旅遊指南
上下屈服强度和规定塑性延伸强度及屈服强度的测试方法
毕业论文格式要求及字体大小的设置
客厅镜子摆放指南:位置选择与风水禁忌
人民日报:真正的高情商,藏在人际交往的9个细节中
为什么用一目十行形容读书速度快 一目十行主人公是谁
天干地支所表达的是什么,本质究竟为何物呢?
干支:纪年纪月纪日纪时 ——中国古代重要科技发明创造
研究发现:这4种坚果调节血脂效果最佳,很多人没吃对
声呐技术关键参数详解:声源级、传播损失、目标强度等定义与计算
C语言如何确定写题思路
如何制定一个有效的里程碑计划表以实现项目目标?
芬兰79%毕业生未上大学,揭秘北欧教育模式真相
“快递送货上门”新规满一年,效果如何? 看看收件人和送件人怎么说
如何防止商业机密被合作伙伴泄露
除湿袋里的"水"到底是什么?安全吗?
2025惹巴拉旅游景区门票价格+优惠政策+开放时间+景点介绍