docker学习(四)使用 commit 制作镜像

本文介绍了如何使用commit方法从基础镜像创建自定义Docker镜像,包括拉取centos镜像,安装环境,设置容器内服务自动启动,以及如何保存和加载镜像。此外,还提到了Docker容器和镜像的管理操作。
摘要由CSDN通过智能技术生成

docker学习(一)docker 概述
docker学习(二)docker 安装部署
docker学习(三)常用命令
docker学习(四)使用 commit 制作镜像
docker学习(五)使用 Dockerfile 制作镜像
docker学习(六)卷 Volume
docker学习(七)docker daemon
docker学习(八)HTTP/HTTPS 代理
docker学习(九)docker 调试
docker学习(十)docker 持久化存储

制作Docker镜像,一般有两种方式:一种是commit方式,利用已有的镜像,运行后安装定制自己需要的环境,然后生成镜像;另一种就是build方式,通过编写Dockerfile命令脚本进行生成镜像。
本文介绍使用commit制作镜像,并配置容器内程序自动启动。

1.从远程仓库拉取一个纯净的 centos 系统镜像

sudo docker pull centos:7

2.创建并进入容器

#创建容器
sudo docker run -itd --rm --name centos7-container --privileged=true --user=root -p 805:80 -p 5545:554 centos:7  /bin/bash
#查看所有的容器
sudo docker ps -a
#进入容器
sudo docker exec -it centos7-container /bin/bash

3.操作容器

在容器中安装环境 ,修改配置文件等(根据自己需求操作,以下仅供参考)。

sudo docker cp build.tar.gz centos7-container:/opt

容器内应用服务自启动设置(如果不想要自动启动,以下操作可以略过)
在容器的根目录下创建start.sh脚本:

#!/bin/sh
/opt/build/bin/MediaServer -c /opt/build/config/config.ini -d 	#启动服务(换成自己的命令)
/bin/bash                										#保留一个终端,防止容器自动退出

修改start.sh权限:

chmod 777 /start.sh

4.安装好环境之后,退出容器

用 exit 退出容器

5.将容器制作成镜像

sudo docker commit -m 'centos:7 zlmediakit' -a 'creater' centos7-container centos7-zlm-image

6.将制作好的镜像打成 tar 包

sudo docker save -o centos7-zlm-image.tar centos7-zlm-image

7.加载tar包

换一台机器,加载tar包。或者在本机上删除centos7-zlm-image。
加载tar包

sudo docker load -i centos7-zlm-image.tar 

需要先stop容器centos7-container,stop之后容器自动删除,然后删除静像centos7-zlm-image。

#关闭现有容器(占用同名端口)
sudo docker stop ca17e6773fc1
sudo docker stop centos7-container
sudo docker rmi centos7-zlm-image

8.使用镜像创建新容器

#查看现有容器
sudo docker ps -a
#创建新容器(如果不需要自动启动,可将/start.sh换成/bin/bash)
sudo docker run -itd --rm --name centos7-zlm-image-container --privileged=true --user=root -p 805:80 -p 5545:554 centos7-zlm-image /start.sh
#进入新容器
sudo docker exec -it centos7-zlm-image-container /bin/bash
#停止容器(自动删除)
sudo docker stop centos7-zlm-image-container
#删除静像
sudo docker rmi centos7-zlm-image

bingo!
参考:
https://blog.csdn.net/lzyzuixin/article/details/119647438
https://blog.csdn.net/wang_magento/article/details/100763622

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值