2024.8.27(Dokerfile的应用、私有仓库)

news2024/11/15 10:41:01

一、Dockerfile应用

1、通过dockerfile创建⼀个在启动容器时,就可以启动httpd服务的镜像

[root@docker ~]# mkdir httpd0

[root@docker ~]# cd httpd0

[root@docker httpd0]# vim abc.sh

[root@docker httpd0]# ls

abc.sh

[root@docker httpd0]# echo " httpd server is running" > index.html

[root@docker httpd0]# ls

abc.sh  index.html

[root@docker httpd0]# vim Dockerfile

FROM    centos:latest
MAINTAINER      "你好"
RUN     rm -rf /etc/yum.repos.d/* && curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
RUN     yum clean all && yum makecache
RUN     yum -y install httpd
ADD     index.html /var/www/html/index.html
ADD     abc.sh /abc.sh
RUN     chmod -v +x /abc.sh
EXPOSE  80
CMD     ["/bin/bash","/abc.sh"]

[root@docker httpd0]# docker build -t centos:httpd0 .

[root@docker httpd0]# docker images

[root@docker httpd0]# docker run -d --name c0 -p80:80 centos:httpd0 
 

2、http容器

[root@docker ~]# rm -rf /var/lib/docker/
[root@docker ~]# systemctl restart docker.service 
[root@docker ~]# docker pull centos

[root@docker ~]# mkdir 001
[root@docker ~]# cd 001
[root@docker 001]# vim 001.sh

#!/bin/bash
rm -rf /run/httpd/*
/sbin/httpd -D FOREGROUND

[root@docker 001]# echo "hdsoaih" > index.html
[root@docker 001]# ls
001.sh  index.html
[root@docker 001]# vim Dockerfile

FROM    centos:latest
MAINTAINER      "centos httpd server"
RUN     rm -rf /etc/yum.repos.d/*
RUN     curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
RUN     yum clean all && yum makecache
RUN     yum -y install epel-release
RUN     yum -y install httpd
ADD     001.sh /abc.sh
ADD     index.html /var/www/html/index.html
RUN     chmod -v -x /abc.sh
CMD     ["/bin/bash","/abc.sh"]

[root@docker 001]# docker build -t centos:httpd .[root@docker 001]# docker run -d --name c0 centos:httpd
fed08b58b46c04fd4bf7bd6d1fc59f9484ec98ab963c05ef3092baeb856ac108
[root@docker 001]# docker ps --all

CONTAINER ID   IMAGE          COMMAND               CREATED          STATUS          PORTS     NAMES
fed08b58b46c   centos:httpd   "/bin/bash /abc.sh"   11 seconds ago   Up 11
seconds             c0

[root@docker 001]# curl 172.17.0.2
hdsoaih
[root@docker 001]# docker run -d -v /opt/:/var/www/html/ -p80 --name a0 centos:httpd
[root@docker 001]# ls /opt/
assets  containerd  favicon.ico  index.html
[root@docker 001]# docker ps --all

CONTAINER ID   IMAGE          COMMAND               CREATED          STATUS          PORTS                                     NAMES
284d24e98215   centos:httpd   "/bin/bash /abc.sh"   17 seconds ago   Up 16 seconds   0.0.0.0:32768->80/tcp, :::32768->80/tcp   a0
fed08b58b46c   centos:httpd   "/bin/bash /abc.sh"   2 minutes ago    Up 2 minutes                                              c0

[root@docker 001]# du -sh /var/lib/docker/overlay2/
343M    /var/lib/docker/overlay2/

3、nginx容器

[root@docker ~]# mkdir 002
[root@docker ~]# cd 002

[root@docker 002]# vim Dockerfile

FROM    centos:yum
MAINTAINER      你好
RUN     yum -y install nginx
RUN     echo "daemon off;" >> /etc/nginx/nginx.conf
EXPOSE  80
CMD     /usr/sbin/nginx

[root@docker 002]# docker build -t centos:nginx .

[root@docker 002]# docker run -d --name c0 centos:nginx

二、创建私有仓库

1、拉取registry

[root@docker 002]# docker pull registry

2、创建挂载目录

[root@docker 002]# mkdir /regist

3、启动容器,映射端口,挂载目录

[root@docker 002]# docker run -d --name r1 -v /regist/:/var/lib/registry -p5000:5000 registry:latest
[root@docker 002]# docker ps --all

CONTAINER ID   IMAGE             COMMAND                   CREATED          STATUS          PORTS                                       NAMES
2aa193212a61   registry:latest   "/entrypoint.sh /etc…"   7 seconds ago    Up 7 seconds    0.0.0.0:5000->5000/tcp, :::5000->5000/tcp   r1
4、访问仓库 

[root@docker 002]# curl localhost:5000/v2/_catalog    catalog:目录
{"repositories":[]}

 5、配置pull和push,修改daemon.json

[root@docker ~]# vim /etc/docker/daemon.json 

{
    "registry-mirrors": [
        "https://do.nark.eu.org",
        "https://dc.j8.work",
        "https://docker.m.daocloud.io",
        "https://dockerproxy.com",
        "https://docker.mirrors.ustc.edu.cn",
        "https://docker.nju.edu.cn"
    ],

        "hosts": [
                "tcp://0.0.0.0:2375",
                "unix:///var/run/docker.sock"
        ],
        "insecure-registries":[
                "http://192.168.8.168:5000"
        ]
}

[root@docker ~]# systemctl restart docker

6、启动registry

[root@docker ~]# docker start r1
[root@docker ~]# curl localhost:5000/v2/_catalog

7、为要上传的镜像添加标记

[root@docker ~]# docker tag centos:yum 192.168.8.168:5000/centos:yum

[root@docker ~]# docker images

[root@docker ~]# docker push 192.168.8.168:5000/centos:yum 
[root@docker ~]# curl localhost:5000/v2/_catalog
{"repositories":["centos"]}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2081671.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C语言重难点总结(2)-指针操作与结构体、动态内存

本节学习内容 1.指针操作与结构体 2.函数(递归函数) 3.动态内存 一、指针操作与结构体 指针可以作为结构体的内部成员使用,也可以使用结构体指针操作结构体空间。 二、函数 1.指针函数 (1)什么是指针函数&#x…

企业家必看的十种让利的商业模式解析!

在当今的商业领域,众多创业者正面临前所未有的挑战。市场竞争激烈,价格战频繁,吸引投资者和推广产品都变得异常艰难。然而,问题的关键在于对“人心”的洞察。人们天生追求利益,因此,掌握如何点燃市场需求和…

运维有必要学编程吗?应该学哪种编程语言?

在以往的观念中,运维的工作内容是不涉及编程、开发的,因此以前也没用学编程的需求。然而随着互联网的发展和变化,现如今,运维也需要开始接触开发,接触编程了。 当然有很多运维朋友,本身是不认可的。可&…

IDE之vscode:连接远程服务器代码(亲测OK),与pycharm链接服务器做对比(亲自使用过了)。

文章目录 前言一、链接服务器vscode和pycharm的对比1、pycharm2、vscode3、总结 二、VS Code的安装与下载三、链接远程服务器1、安装远程插件:Remote-SSH2、写ssh配置文件3、链接服务器4、登录成功,打开文件夹 前言 大模型开发肯定要在服务器了&#xff…

使用PyTorch AlexNet预训练模型对新数据集进行训练及预测

在 https://blog.csdn.net/fengbingchun/article/details/112709281 中介绍了AlexNet网络,这里使用PyTorch中提供的AlexNet预训练模型对新数据集进行训练,然后使用生成的模型进行预测。主要包括三部分:新数据集自动拆分、训练、预测 1.新数据…

C++竞赛初阶L1-14-第六单元-数组(31~33课)543: T456473 年龄与疾病

题目内容 某医院进行一项研究,想知道某项疾病是否与年龄有关。因此对以往的诊断记录进行整理,统计 0-18 、 19-35 、 36-60、 61 及以上这四个年龄段的患者人数占总患者人数的比例。 输入格式 输入共 2 行。 第一行包含一个整数 N(0<n≤100),表示总患者人数。 第二…

OpenCV绘图函数(1)绘制带箭头的直线函数arrowedLine()的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 绘制一个从第一个点指向第二个点的箭头线段。 cv::arrowedLine 函数在图像中绘制一个从 pt1 到 pt2 的箭头。另见 line 函数。 函数原型 void c…

Android Auto推出全新Google助手设计

智能手机与汽车的无缝整合已成为现代驾驶的重要组成部分&#xff0c;而 Android Auto 一直在这一领域处于领先地位。谷歌通过不断推出新功能和更新&#xff0c;体现了其致力于提升 Android Auto 体验的决心。最近&#xff0c;Android Auto 引入了 Google助手的全新设计。 当系…

vue3 使用vue-masonry加载更多,重新渲染

在使用 van-list做上拉加载更多&#xff0c;加载下一页的时候&#xff0c;会出现瀑布图重叠&#xff0c;原因是布局没有重新更新&#xff0c;所以需要 调用 vue-masonry更新布局的方法。 看了源码才知道可以这样用&#xff0c;api都没写&#xff0c;隐藏太深了。。。 vue3中通…

随心笔记--测试报告

项目名称 随心笔记 版本号 / 发布类型 正式发布 测试负责人 ** 测试完成日期 2024.8. 联系方式 130576**** 评审人 批准人 评审日期 批准日期 1.项目背景 设计“随心笔记”这个项目的初衷是为了提供一个便捷、个性化的博客管理平台&#xff0c;满足用户记录生…

yarn vite脚手架 react+ts搭建项目

创建react 1、确保你已经安装了Node.js&#xff08;建议使用最新的LTS版本&#xff09;。 2、安装Yarn&#xff08;如果尚未安装&#xff09;: npm install -g yarn 3、创建新项目: yarn create vite 根据提示安装 vite脚手架&#xff0c;如果已安装无提示信息 直接填写项目名…

人脸表情识别数据集分享(内含处理过的AffectNet等数据集)

前言&#xff1a; 人脸表情识别有三大主流数据集rafdb、affectnet、ferplus&#xff0c;之前跑rafdb精度挺正常的&#xff0c;但是另外两个数据集复现不出来精度&#xff0c;经过几个月的踩坑&#xff0c;我发现其实是数据集的原因。 我在官方找的AffectNet数据集有几十个G&…

SQL 高阶 (sql优化)

批量插入&#xff1a; sql 批量插入&#xff1a; INSERT INTO users(name, age) VALUES (Tom, 20), (Jerry, 22), (Bob, 19); -- 该方式 适合 500条以内。多线程插入批量插入&#xff0c;能够大幅提升插入速度。 经过测试&#xff1a;系统性能&#xff0c;8核16G 插入10w条数…

Leetcode 1108. IP地址无效化 C++实现

Leetcode 1108. IP 地址无效化 问题&#xff1a;给你一个有效的 IPv4 地址address&#xff0c;返回这个 IP 地址的无效化版本。 所谓无效化 IP 地址&#xff0c;其实就是用 "[.]" 代替了每个 "."。 方法1&#xff1a;对字符串挨个进行判断&#xff0c;如…

java程序优化

Java程序的性能优化是一个复杂但非常重要的过程&#xff0c;它涉及多个方面。首先&#xff0c;我们需要识别性能瓶颈的具体位置&#xff0c;这通常可以通过性能分析工具&#xff08;如JProfiler, VisualVM等&#xff09;来完成。以下是一些通用的优化策略&#xff1a; 代码层面…

进程的创建与使用(win32-API)

一、前言 进程可以被视作操作系统中运行程序的一个实例&#xff0c;是系统资源分配和调度的基本单位。每一个进程都拥有自己独立的地址空间、一组状态信息&#xff08;如打开的文件、内存映射等&#xff09;&#xff0c;以及一个或多个线程来执行代码。进程之间的隔离性确保了…

飞睿智能家居人体微动感知雷达模组,宠物喂食器、LED灯控连续波雷达感应开关原理

在智能家居的浪潮中&#xff0c;飞睿智能人体微动感知雷达模组犹如一位“隐形守护者”&#xff0c;以其独特的连续波雷达感应开关原理&#xff0c;为我们带来更为智能、便捷的生活体验。今天&#xff0c;就让我们一起走进这一前沿科技&#xff0c;探索它是如何改变我们的生活。…

IOS 13 网络请求和Moya框架

允许HTTP请求 从iOS9开始&#xff0c;推荐使用HTTPS&#xff0c;如果使用的HTTP&#xff0c;默认情况下会出现如下错误&#xff1a; The resource could not be loaded because the App Transport Security policy requires the use of a secure connection. 这是因为iOS9引…

中俄联袂 助力前行 点燃希望——助残义诊在杭州邦尔骨科医院顺利举行

8月26日&#xff0c;由杭州市残疾人联合会主办、临平区残疾人联合会承办&#xff0c;杭州市邦尔骨科医院协办的“中俄联袂 助力前行 点燃希望”助残义诊活动在该院1号楼门诊大厅顺利进行。此次活动得到了俄罗斯伊里扎洛夫中心医院和杭州市邦尔骨科医院专家的大力支持。 本次义诊…

珈创生物业绩下滑:毛利率连年大降,产能利用率滑坡仍募资扩产

《港湾商业观察》廖紫雯 日前&#xff0c;武汉珈创生物技术股份有限公司&#xff08;以下简称&#xff1a;珈创生物&#xff09;于北交所证券交易中心披露招股书&#xff0c;保荐机构为国投证券。 珈创生物往年IPO进程可谓一波三折。2020年12月&#xff0c;公司曾申报沪交所科…