3.Docker的镜像制作

Posted Amfc_只敲代码不秃头

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3.Docker的镜像制作相关的知识,希望对你有一定的参考价值。

3.Docker的镜像制作

容器优化

使用对应版本的centos做yum源

参考文档>>https://www.cnblogs.com/longloved/p/14918224.html

  • 在docker镜像中安装

>>yum install -y openssh*

>>yum install -y openssh-server

  • 启动ssh服务

>>/etc/init.d/sshd start

停止>>/etc/init.d/sshd stop

重启>>/etc/init.d/sshd restart

  • 宿主机用ssh连接docker

>>ssh [eth_docker IP]

基于容器的镜像制作

  • 制作容器

>>docker commit [container name] [commit image name]

  • 启动容器的父命令=/usr/sbin/sshd -D

>>docker run -d --name=[container name] [image name:Tag] /usr/sbin/sshd -D

  • 添加公网port

>>docker run -d --name=ssh_8022 -p 8022:22  [centos/centos6.10_ssh:v1]  /usr/sbin/sshd -D

构建企业镜像(基于Centos6.9)

启用基础镜像容器

运行>>docker run -it --name=centos_BBS centos:6.9 /bin/bash

容器yum换源

新建备份文件夹>>mkdir /etc/yum.repos.d/bak

移动源到文件夹>>mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak

配置yum源文件>>cat >/etc/yum.repo.d/ftp_centos6.9 <<EOF

[ftp]

name = ftpbase

baseurl = ftp://172.17.0.1/centos6.9

enabled = 1

gpgcheck = 0

EOF

清除yum缓存>>yum clean all

重建yum缓存>>yum makecache

安装软件并进行初始化

设置密码

>>passwd

安装ssh

>>yum install -y openssh*

>>yum install -y openssh-server

安装Apache

>>yum install -y httpd

安装mysql以及mysql-server

>>yum install -y mysql

>>yum install -y mysql-server

安装PHP以及PHP-mysql

>>yum install -y php

>>yum install -y php-mysql

初始化启动ssh

>>/etc/init.d/sshd start

初始化启动mysql

>>/etc/init.d/mysqld start

mysql的用户授权等操作

用户授权>>grant all on *.* to root@\'%\' identified by \'root\';

>>grant all on *.* to discuss@\'%\' identified by \'123\';

建库>>create database discuss charset utf8;

初始化Apache

>>/etc/init.d/httpd start

制作第一版镜像

>>docker commit [container name/ID] [images name:Tag]

上传文件到宿主机/opt/volume/html下解压

discuz下载地址>>https://longloved.lanzoui.com/iI6jEql8bde 密码:discuz

启动第一版镜像

>>docker run -it -p 8080:80 --name=\'BBS\' -v /opt/volume/mysql:/var/lib/mysql/ -v /opt/volume/html:/var/www/html [Image nameNO1:Tag]

重新启动mysql和Apache

>>/etc/init.d/httpd start

>>/etc/init.d/mysqld start

安装discuz

浏览器访问localhost:[port]/[解压后的文件名]

**直接解压到html/目录下的访问localhost:[port]

制作第二版镜像

>>docker commit [container name/ID] [Image nameNO2:Tag]

宿主机创建启动脚本程序

cat>/opt/volume/sh/bbs.sh<<EOF

#!/bin/bash

/etc/init.d/httpd start

/etc/init.d/mysqld start  

/usr/sbin/sshd -D

脚本设置权限为777

chmod 777 /opt/volume/sh/bbs.sh

启动第二版镜像(完结)

docker run -d --name=run_bbs -p 10022:22 -p 10080:80 -p 13306:3306 -v /opt/volume/mysql/:/var/lib/mysql -v /opt/volume/html/:/var/www/html -v /opt/volume/sh/:/opt/volume/sh  centos6.9_bbs /opt/volume/sh/bbs.sh

 

以上是关于3.Docker的镜像制作的主要内容,如果未能解决你的问题,请参考以下文章

运维实操——docker容器安装与镜像

docker常用集锦

docker 镜像 overview

理解Docker:Docker 镜像

【3.1】docker基础知识 镜像

3.Docker技术入门与实战 --- 使用Docker镜像