docker镜像制作及发布
以centos为例。
主要内容:安装docker,制作镜像,发布镜像。
安装docker
1. 安装docker
yum install -y docker
等待一会,安装成功,查看安装列表

2. 启动docker
systemctl start docker
3. 设置docker开机启动
systemctl enable docker
4. 查看docker状态
systemctl status docker

5. 查看docker版本
docker version

至此,docker安装成功。
制作镜像
1. 从远程仓库拉取纯净的centos镜像
查询 centos 相关的镜像
docker search centos

选取第一个官方版本,下载镜像到本地。
docker pull docker.io/centos

查看本地镜像
docker images

2. 使用镜像创建容器
创建容器
格式:docker run -dit --name=容器名 镜像id /bin/bash
docker run -dit --name container-py3 5d0da3dc9764 /bin/bash

注意红框的镜像ID。
查看当前运行中容器
docker ps

3. 进入容器
格式:docker exec -it 容器名 /bin/bash
docker exec -it container-py3 /bin/bash

4. 操作容器
安装python3环境
yum install -y python3

安装成功后。退出容器。
python3 --version
exit

5. 制作镜像
格式:docker commit -m '镜像描述' -a '制作者' 容器名 镜像名
docker commit -m 'test' -a 'yourname' container-py3 image-py3

6. 将镜像打成tar包
格式:docker save -o tar包的路径 镜像名
docker save -o /data/py3.tar image-py3

指定路径下,会有py3.tar。
7. 使用tar包
先删除本地的容器和镜像,依次操作:
docker ps #查看运行中的容器
docker stop container-py3 #停止容器
docker rm container-py3 #删除容器
docker images #查看镜像
docker rmi image-py3 #删除镜像

加载制作好的tar包
格式:docker load < tar包所在路径
docker load < /data/py3.tar

8. 使用镜像
查看镜像
创建并运行容器
docker run -dit --name container-py3 226354af8bd3 /bin/bash
进入容器
docker exec -it container-py3 /bin/bash
测试 python3 环境
python3

发布镜像
tar包形式分发不是很方便,可以将镜像发布到远程仓库。
Docker官网推出的docker仓库的一个公共服务器。
官网地址:https://hub.docker.com/
创建账号后
登录账号
docker login
退出账号
docker logout
1. 打tag
docker tag image-py3 yourname/image-py3
2. push上传
docker push yourname/image-py3
3. 查看docker仓库
上传完成后,可以在docker仓库web页面查看镜像。
4. 其他人使用,拉取镜像
docker pull yourname/image-py3
refer
https://www.cnblogs.com/pjcd-32718195/p/11762079.html
https://blog.csdn.net/qq_34244910/article/details/100545094
docker镜像制作及发布的更多相关文章
- Docker系列-(2) 镜像制作与发布
上篇文章引入了Docker的基本原理和操作,本节文章主要介绍如何制作Docker镜像和发布. 镜像文件结构 Docker镜像的本质是一系列文件的集合,这些文件依次叠加,形成了最后的镜像文件,类似于下图 ...
- MySQL、MongoDB、Redis数据库Docker镜像制作
MySQL.MongoDB.Redis数据库Docker镜像制作 在多台主机上进行数据库部署时,如果使用传统的MySQL的交互式的安装方式将会重复很多遍.如果做成镜像,那么我们只需要make once ...
- Jenkins集成Docker镜像实现自动发布
1. 思路&流程 Jenkins集成Docker镜像实现自动发布与Jenkins发布mavne项目思路一样总体流程 为:Jenkins 拉去远端源码 -- gitl实现应用打包 -- jenk ...
- docker研究-4 docker镜像制作
这次实验以centos镜像为基础镜像进行相关docker镜像制作. 1. 下载centos镜像 [root@localhost ~]# docker pull centosUsing default ...
- 《Docekr入门学习篇》——Docker镜像制作
Docker镜像制作 Docker镜像的构建分为两种,一种是手动构建,一种是dockerfile(自动构建) 手动构建 基于centos镜像进行构建制作Nginx镜像 [root@rbtnode1 ~ ...
- Docker 镜像制作教程:针对不同语言的精简策略
本系列文章将分为三个部分: 第一部分着重介绍多阶段构建(multi-stage builds),因为这是镜像精简之路至关重要的一环.在这部分内容中,我会解释静态链接和动态链接的区别,它们对镜像带来的影 ...
- doris 0.9.0版本docker镜像制作与使用
1. 安装docker 详情请参见本人博客 2. 编译doris 详情请参见doris官网文档 3. 在编译好的doris output文件夹下编写两个Dockerfile 3.1 Dockerfi ...
- Nginx+PHP7.3.9 Docker镜像制作
最近因项目需要制作了多个版本的php docker镜像,制作过程可谓是一波三折,因基于yum的方式安装php的方式在安装扩展插件时很不方便,不容易找到插件对应的yum源,所以PHP在docker镜像中 ...
- presto-gateway 试用以及docker 镜像制作
presto-gateway 是 lyft 团队开源 的prestodb 的工具.以下是一个简单的试用,以及碰到问题的解决 还有就是docker 镜像的制作 Dockerfile 很简单,本地构建然后 ...
随机推荐
- OpenWrt之关闭IPv6
目录 OpenWrt之关闭IPv6 1.前言 2.WAN口设置 3.LAN口设置 4.保存并应用 5.防火墙设置 6.DHCP/DNS设置 1)SSH连接路由器 2)输入第一条命令,按回车执行 3)输 ...
- Struts拦截器设置完的值为什么在页面取不到
Struts拦截器设置完的值为什么在页面取不到. ActionContext ac = (ActionContext) invocation.getInvocationContext(); ac.pu ...
- C++ 11 新特性:函数声明auto
1.概览 1.1 函数名中的箭头,用来表明函数的return type,其使用在函数的返回类型需要通过模板参数进行推导,使用在decltype()和declval()不方便的场景 2.正文 c++ 中 ...
- git pull 拉取报错:fatal: refusing to merge unrelated histories
fatal: refusing to merge unrelated histories(拒绝合并不相关的历史) 使用 git pull origin master --allow-unrelated ...
- Elasticsearch 和 solr 的区别
背景:它们都是基于Luence搜索服务器基础之上开发的一款优秀高性能的企业级搜索服务器.也都是基于分词技术构建的倒排索引的方式进行查询 开发语言:java 诞生时间: solr :2004年 es ...
- 网络编程之UDP中一个包的大小最大能多大
读书笔记:here 结论1:局域网环境下,建议将UDP数据控制在1472字节以下 一定要知道 因为链路层的传输单元(MTU)是1500字节,1500字节中并不包含链路层的首尾18个字节.1500字节是 ...
- 【LeetCode】880. Decoded String at Index 解题报告(Python)
[LeetCode]880. Decoded String at Index 解题报告(Python) 标签(空格分隔): LeetCode 作者: 负雪明烛 id: fuxuemingzhu 个人博 ...
- hud-5475 An easy problem(线段树)
http://acm.hdu.edu.cn/showproblem.php?pid=5475 An easy problem Time Limit: 8000/5000 MS (Java/Others ...
- CSS实现水平垂直居中的方式有哪些?
CSS实现水平垂直居中的方式有哪些? 基本结构样式: .box { width: 400px; height: 400px; background-color: red; } .inner { wid ...
- Mysql 层级无限嵌套
1.新建测试数据 新建channel表 DROP TABLE IF EXISTS channel; CREATE TABLE channel ( id INT(11) NOT NULL AUTO_IN ...