51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

docker手动制作容器镜像

docker手动制作容器镜像

1.启动容器

docker run --name base -d centos:7 tail -f /etc/hosts

2.安装服务

进入容器

docker exec -it base bash

进入容器后 安装 Yum 源

先确定是否可以联网,(我这边刚开始不能上网, 重启linux 就可以了,好奇怪)

然后:

 curl -s -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

 curl -s -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

yum -y install nginx

rm -rf /usr/share/nginx/html/* 

echo www.baimei.com > /usr/share/nginx/html/index.html

nginx -g 'daemon off;'  # 在前台启动nginx服务

我们在 另一个终端  评一下




然后 退出

exit 

这个时候上不去网了

3.将容器提交为镜像

docker container commit -a baimeidashu.com -m 'shoudong v0.1' base baimei-centos-nginx:v0.1
 # -a表示声明作者信息,-m表示声明注释信息。

4.查看镜像的详细信息

docker inspect baimei-centos-nginx:v0.1 

docker images

5.手动再次提交测试

docker run -d --name web2 baimei-centos-nginx:v0.1

这种方式,我们是访问不到服务的,因为 我们制作的镜像, nginx 没有启动

要想启动需要给它 传递参数:

docker run -d  --name web3 baimei-centos-nginx:v0.1  nginx -g 'daemon off;'

再次 提交一个带 命令参数的 制作一个镜像

docker container commit web6 baimei-centos-nginx:v0.2

这次我们根据 带 参数nginx -g 'daemon off 的镜像,来启动一个容器。

看看能否正常 访问:

docker run -d --name web7 baimei-centos-nginx:v0.2

我们做一下 端口映射来启动

docker run -d -p 80:80 --name web8 baimei-centos-nginx:v0.2

到此为止,我们制作了自己的镜像文件了。


拓展,

如何 做多个 服务呢?

启动一个脚本就可以:

docker run -d --name start1 baimei-centos-nginx:v0.11 sh /start.sh

赞(6)
未经允许不得转载:工具盒子 » docker手动制作容器镜像