Docker创建镜像 并推拉Harbor
创建镜像

一、根据dockerfile创建镜像
1、mkdir dockerfile/lib/centos7base/
创建目录
2、创建Dockerfile
vim Dockerfile

3、构建镜像
docker build -t wyxcentos7 .
过程解析
docker镜像是只读的,这里为什么能够在centos镜像的基础上进行自定义操作呢?
我们看一下docker的编译过程

编译的第一步(绿色边框)会复用之前已经存在的centos:7
重点是第二步
882832c2b8eb其实是在centos:7镜像的基础上生成的一个临时container的id
我们忽略vim的安装过程,跳到最后

最后根据临时生成的container来docker commit 生成镜像文件,最后删除临时container(对照博客开始的图示进行理解)
2、根据容器构建镜像
1、拉去一个镜像
docker run -it centos
(run =(pull start exec))
2、查看vim

3、安装一个vim
yum intall vim

4、退出容器
exit

5、提交容器


进入容器
docker exec -it 69d1 bash
退出
exit
推送镜像到harbor
1、打标签
docker tag wyxcentosvim:latest 192.168.31.101/library/wyxcentosvim:latest
2、推送
docker push wyxcentosvim:latest 192.168.31.101/library/wyxcentosvim:latest
docker push 192.168.31.101/library/wyxcentosvim:1.02
3、删除本地镜像
docker rmi .........
无法删除镜像multiple repositories
原因:对于被删除的ImageID,这里存在多个REPOSITORY名字引用。通过镜像名字删除。
https://blog.csdn.net/JackLiu16/article/details/80581709
4、拉取镜像
docker pull 192.168.31.101/library/wyxcentosvim:latest

推荐文章:https://www.jianshu.com/p/1409967439d6
Docker创建镜像 并推拉Harbor的更多相关文章
- Docker 创建镜像、修改、上传镜像
Docker 创建镜像.修改.上传镜像 –创建镜像有很多方法,用户可以从 Docker Hub 获取已有镜像并更新,也可以利用本地文件系统创建一个. 一.创建镜像 创建镜像有很多方法,用户可以从 Do ...
- Docker创建镜像以及私有仓库
Docker的安装及镜像.容器的基本操作详见博客https://blog.51cto.com/11134648/2160257下面介绍Docker创建镜像和创建私有仓库的方法,详细如下: 创建镜像 创 ...
- docker 创建镜像,并推送到私有仓库
创建镜像 创建 Dockerfile 镜像命名规则:registyr_url / namespace / depart / name : version 用这个规则创建的镜像,可直接推送到私有仓库 ...
- Docker创建镜像文件并在容器中运行
1.如何创建镜像文件 首先找到Docker ToolBox安装的路径,在路径下直接新建Dockerfile文件 在Dockerfile文件里写入的内容为: FROM docker/whalesay:l ...
- Docker - 创建镜像(二)
实际工作中,我们可能需要自己去创建一个docker镜像,下面给大家介绍如何创建docker镜像 1. 创建一个最简单的镜像 准备Dockerfile文件 [root@dockhost ~]# mkdi ...
- docker 创建镜像
docker:/root# docker search centos NAME DESCRIPTION STARS OFFICIAL AUTOMATED centos The official bui ...
- docker创建镜像
手动创建: docker run -d -p mynginx:v2 nginx rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest- ...
- docker创建镜像及push镜像出错问题
docker build 出错 Got permission denied while trying to connect to the Docker daemon socket at unix:/ ...
- [容器]docker创建镜像
手动创建: docker run -d -p mynginx:v2 nginx rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest- ...
随机推荐
- Python垃圾回收机制?
Python的GC模块主要运用了“引用计数”(reference counting)来跟踪和回收垃圾.在引用计数的基础上,还可以通过“标记-清除”(mark and sweep)解决容器对象可能产生的 ...
- Ajax的个人总结
Ajax Ajax是Asynchronous Javascript And XML(异步JavaScript和XML)的缩写. Ajax技术描述了使用脚本操纵HTTP和Web服务器进行数据交换,在页面 ...
- LeetCode 743. Network Delay Time
原题链接在这里:https://leetcode.com/problems/network-delay-time/ 题目: There are N network nodes, labelled 1 ...
- c++ socket发送数据时,sendData = char * string 导致的乱码问题
解决方法:将string 通过copy函数复制到某个char[] 1. string res =“xxx”; char arr[100]; int len = res.copy(arr, 100); ...
- learning java 转换流
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public ...
- 洛谷 P2858 [USACO06FEB]奶牛零食Treats for the Cows 题解
P2858 [USACO06FEB]奶牛零食Treats for the Cows 题目描述 FJ has purchased N (1 <= N <= 2000) yummy treat ...
- P4899 【[IOI2018] werewolf 狼人】
感觉已经几次碰到这种类型的题目了,写篇\(Blog\)总结一下 题意: 是否存在一条\((s_i, t_i)\)的路径,满足先只走编号不超过\(L_i\)的点,再走编号不超过\(R_i\)的点 \(S ...
- CF888G 【Xor-MST】
妙妙题-- 看到\(MST\),想到\(Kruskal\),看到异或,想到\(Trie\) 首先我们模拟一下\(Kruskal\)的流程:找到最小边,如果联通就忽略,未联通就加边 我们把所有点权值加入 ...
- (15)Go错误处理
1.erro(一般错误) package main import ( "errors" "fmt" ) func div(a, b int) (res int) ...
- SSH框架整合1
======================web.xml======================= <?xml version="1.0" encoding=" ...