系列导航

一、docker入门(概念)

二、docker的安装和镜像管理

三、docker容器的常用命令

四、容器的网络访问

五、容器端口转发

六、docker数据卷

七、手动制作docker镜像

八、docker-file自动构建docker镜像

九、dockerfile指令讲解

十、docker镜像的分层

十一、docker的容器互联

十二、docker仓库

十三、docker的四种网络类型

十四、跨宿主机容器之间的通信

十五、跨主机通信overlay网络

十六、企业级私有仓库harbor

十七、其他

第一步:启动一个基础的容器

第二步:把安装好的容器提交成镜像

第三步:验证容器是否好用

(1)安装单个服务

[root@node03 opt]# docker run -it -p 1022:22 centos:6.9

下载yum源

[root@cd9754a81e57 /]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

Dload  Upload   Total   Spent    Left  Speed

100  2523  100  2523    0     0   8078      0 --:--:-- --:--:-- --:--:--  8354

安装ssh服务

[root@cd9754a81e57 opt]# yum install openssh-server -y

启动ssh服务

注:ssh服务第一次安装需要启动一下,启动后会自动生成秘钥对,才能正常使用。

[root@cd9754a81e57 opt]# service sshd start

Generating SSH2 RSA host key:                              [  OK  ]

Generating SSH1 RSA host key:                              [  OK  ]

Generating SSH2 DSA host key:                              [  OK  ]

Starting sshd:                                             [  OK  ]

设置容器centos的root密码

[root@cd9754a81e57 opt]# passwd

Changing password for user root.

把安装好ssh服务的容器提交为镜像

[root@node03 ~]# docker ps

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

cd9754a81e57        centos:6.9          "/bin/bash"         28 minutes ago      Up 28 minutes                           sweet_poincare

[root@node03 ~]# docker commit cd9754a81e57 centos6.9_ssh_yc:v1

docker commit eb9819674b93  oracle-12c-tour:v1

sha256:7540332c4c1728f4f24e9999641965cfa937e2c65ae77f2736b2a111ca2d21c1

[root@node03 ~]# docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

centos6.9_ssh_yc    v1                  7540332c4c17        7 seconds ago       332MB

启动镜像验证服务可用性

[root@node03 ~]# docker run -d -p 1022:22 centos6.9_ssh_yc:v1 /usr/sbin/sshd -D

63e897aa174b15e651cf28376ecab8cd2bf3f97afe2a29bbbe8f54f9b14663e0

使用ssh连接工具可以正常连接说明镜像制作成功

(2)安装多个服务

如果需要启动多个服务需要写脚本hung住服务程序

例如ssh服务和nginx同时提供服务

<1>在容器里写脚本

多个启动脚本时最后一个脚本hung住就可以。

<2>提交成镜像

<3>启动容器

注:因为没有给脚本增加权限所有必须加 /bin/bash

七、手动制作docker镜像的更多相关文章

  1. 手动制作Docker镜像

    手动制作 Docker 镜像 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云服务器(用来用去感觉 Windows 的 Docker 出各种问题,比如使用 ...

  2. Dockerfile 自动制作 Docker 镜像(一)—— 基本命令

    Dockerfile 自动制作 Docker 镜像(一)-- 基本命令 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云服务器 c. 上一篇:手动制作Do ...

  3. 详解SpringBoot(2.3)应用制作Docker镜像(官方方案)

    关于<SpringBoot-2.3容器化技术>系列 <SpringBoot-2.3容器化技术>系列,旨在和大家一起学习实践2.3版本带来的最新容器化技术,让咱们的Java应用更 ...

  4. SpringBoot系列: 制作Docker镜像的全过程

    本文主要参考了 https://segmentfault.com/a/1190000016449865 , 感谢作者的付出. 另外,  在本文中, 演示了Windows+Maven+Docker To ...

  5. 离线手动部署docker镜像仓库——harbor仓库(HTTPS)

    实验环境: harbor服务器系统:CentOS Linux release 7.5.1804 (Core)harbor服务器IP:10.1.12.114harbor版本:v1.5.0docker版本 ...

  6. 制作Docker镜像的两种方式

    此文已由作者朱笑天授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 一.使用docker commit命令制作docker镜像 1. pull一个centos6.6的基础镜像, ...

  7. 体验SpringBoot(2.3)应用制作Docker镜像(官方方案)

    关于<SpringBoot-2.3容器化技术>系列 <SpringBoot-2.3容器化技术>系列,旨在和大家一起学习实践2.3版本带来的最新容器化技术,让咱们的Java应用更 ...

  8. [开源]制作docker镜像不依赖linux和Docker环境

    背景 最近群友们经常反馈docker镜像制作起来有点麻烦,我开源的antdeploy工具虽然可以制作镜像但是必须有一个提前:有一台安装好docker的linux服务器.因为大家开发环境基本上都是win ...

  9. Dockerfile 自动制作 Docker 镜像(三)—— 镜像的分层与 Dockerfile 的优化

    Dockerfile 自动制作 Docker 镜像(三)-- 镜像的分层与 Dockerfile 的优化 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云 ...

  10. Dockerfile自动制作Docker镜像(二)—— 其它常用命令

    Dockerfile自动制作Docker镜像(二)-- 其它常用命令 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云服务器 c. 上一篇:Dockerf ...

随机推荐

  1. 《REBEL Relation Extraction By End-to-end Language generation》阅读笔记

    论文来源   代码地址   相关视频(YouTube)   相关概念: 1.What is natural language understanding (NLU)? Natural language ...

  2. 聊一聊 C# 线程切换后上下文都去了哪里

    一:背景 1. 讲故事 总会有一些朋友是不是问一个问题,在 Windows 中线程做了上下文切换,请问被切的线程他的寄存器上下文都去了哪里?能不能给我挖出来?这个问题其实比较底层,如果对操作系统没有个 ...

  3. bash shell笔记整理——file命令

    file命令的作用 查看一个给定参数的文件类型 file命令语法 file [FILE...] file命令还有选项,但是基本用的不太多,这个命令也基本用得不是很多. 示例 [root@nginx-p ...

  4. MySQL运维15-一主一从读写分离

    一.读写分离介绍 读写分离,是把数据库的读和写分开操作,以应对不同的数据库服务器.主数据库提供写操作,从数据库提供读操作,这样能有效的减轻单台数据库的压力. 二.一主一从原理 MySQL的主从复制是基 ...

  5. 数字孪生系统为何需要将GIS系统进行融合?

    数字孪生是一种通过数字模型实时仿真现实世界的技术,而GIS(地理信息系统)则是用于收集.存储.处理和展示地理数据的工具.将数字孪生系统与GIS系统进行融合,可以为各行业带来诸多优势和创新.那么数字孪生 ...

  6. 山海鲸Cesium:用更简单的方式升级视效

    CesiumJS作为绝大多数人都在用的开源地球可视化引擎,视觉效果并不拔尖,这让很多giser都想着有一天升级一下视效,从众多平庸的项目中脱颖而出.然而,对于一些使用Cesium的项目来说,要想达到C ...

  7. MySQL|MySQL事物以及隔离级别

    MySQL 事务主要用于处理操作量大,复杂度高的数据.比如开单,需要添加给订单表增加记录,还需要增加订单的各种相关明细,操作复杂度高,这些操作语句需要构成一个事务.在 MySQL 命令行的默认设置下, ...

  8. Pikachu漏洞靶场 PHP反序列化

    PHP反序列化 查看源码,以下为关键代码: class S{ var $test = "pikachu"; function __construct(){ echo $this-& ...

  9. 零代码搭建一个微信小程序

    本文分享自华为云社区<[新手指引]体验通过Astro Zero零代码快速搭建微信小程序>,作者:华为云Astro . 您将学会如何基于Astro零代码能力,DIY开发,完成问卷.投票.信息 ...

  10. 手把手教你写一个spring IOC容器

    摘要:spring框架的基础核心和起点毫无疑问就是IOC,IOC作为spring容器提供的核心技术,成功完成了依赖的反转:从主类的对依赖的主动管理反转为了spring容器对依赖的全局控制.今天就带大家 ...