我们已经实战过在Linux系统通过docker部署个人项目,那么今天就尝试下制作自己的docker镜像。如果还有小伙伴没有在docker上部署过个人项目,那么可以参考下我写过的一篇文章,点击这里进行跳转。。。

1.准备工作

1.1.首先你需要拥有一个DockerHub 的个人账户,点击这里进行注册;

DockerHub 是一个由 Docker 公司运行和管理的基于云的存储库。它是一个在线存储库,Docker
镜像可以由其他用户发布和使用。有两种库:公共存储库和私有存储库。

1.2.将备好的war包上传至服务器;
1.3.确保你的虚机上装有tomcat镜像;

2.开始工作

2.1检查环境

a.登陆个人DockerHub账号

点击进行登陆

wm ware 如何卸载镜像 war包镜像_tomcat


b.检查上传的war包

我是上传到当前目录下的,直接ls命令查看即可

wm ware 如何卸载镜像 war包镜像_wm ware 如何卸载镜像_02


c.检查docker是否安装成功docker -v

wm ware 如何卸载镜像 war包镜像_tomcat_03


d.检查tomcat镜像是否安装成功docker images |grep tomcat

wm ware 如何卸载镜像 war包镜像_tomcat_04

2.2制作镜像

2.2.1运行tomcat镜像
docker run -d -p 8080:8080 tomcat

wm ware 如何卸载镜像 war包镜像_tomcat_05

2.2.2查看tomcat容器
docker ps

wm ware 如何卸载镜像 war包镜像_wm ware 如何卸载镜像_06

2.2.3将war包部署到tomcat容器中
docker cp testdocker.war 75add6d9ee44:/usr/local/tomcat/webapps

wm ware 如何卸载镜像 war包镜像_linux_07

2.2.4访问项目保证容器正常

再次提示没有在docker部署过个人项目的,建议先去看我的另一篇博客

wm ware 如何卸载镜像 war包镜像_tomcat_08

2.2.5从容器创建一个新的镜像

我们需要基于当前这个部署了个人项目的tomcat容器制作自己的镜像文件

docker commit -a "袁强" -m "create images by 袁强" -p 75add6d9ee44 testdocker:1.0

-a :提交的镜像作者;

-c :使用Dockerfile指令来创建镜像;

-m :提交时的说明文字;

-p :在commit时,将容器暂停

命令说明:将容器 75add6d9ee44 保存为新的镜像,镜像名为testdocker,tag为1.0,并添加提交人信息和说明信息

2.2.6检查镜像是否制作成功
docker images | grep testdocker

wm ware 如何卸载镜像 war包镜像_docker_09

2.3镜像仓库

个人镜像已经制作成功,我们需要将镜像保存到远程仓库,这样既方便管理,也可以提供给其他人使用

2.3.1标记本地镜像,将其归入某一仓库

docker tag [OPTIONS] IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]
使用docker tag命令完成这一操作

docker tag testdocker:1.0 yuanqiang1/testdocker:1.0

docker tag 后面需要两个参数,参数1为个人镜像[镜像名:tag],参数2为远程仓库[DockerHub用户名/repository:tag]

wm ware 如何卸载镜像 war包镜像_wm ware 如何卸载镜像_10

2.3.2查看tag结果
docker images | grep yuanqiang1

wm ware 如何卸载镜像 war包镜像_wm ware 如何卸载镜像_11

2.3.3推送镜像
docker push yuanqiang1/testdocker:1.0

wm ware 如何卸载镜像 war包镜像_linux_12


提示:

在push的过程中可以失败:denied: requested access to the resource is denied

wm ware 如何卸载镜像 war包镜像_linux_13


这是因为在push之前,需要通过docker login命令登陆你的docker hub账号,登陆成功后重新push即可

wm ware 如何卸载镜像 war包镜像_tomcat_14

2.3.4DockerHub查看镜像

wm ware 如何卸载镜像 war包镜像_linux_15

2.4拉去镜像

上一步中我们已经成功将个人镜像上传至docker仓库,那么我们现在下载这个镜像进行测试

2.4.1下载个人镜像

a.为了保证可信度,下载镜像前,我们把本地的镜像删除

docker rmi imagename:tag

docker rmi -f imagename:tag
-f 强制删除镜像

wm ware 如何卸载镜像 war包镜像_wm ware 如何卸载镜像_16


b.下载个人镜像

docker pull yuanqiang1/testdocker:1.0

wm ware 如何卸载镜像 war包镜像_java_17


c.查看下载结果

docker images

wm ware 如何卸载镜像 war包镜像_linux_18

2.4.2启动测试个人镜像

a.运行个人镜像

docker run -d -p 8085:8080 yuanqiang1/testdocker:1.0

wm ware 如何卸载镜像 war包镜像_docker_19


b.访问页面

http://192.168.1.104:8085/testdocker/index.jsp

wm ware 如何卸载镜像 war包镜像_java_20

3.总结

定制镜像的方式还可以通过文件 Dockerfile ,感兴趣的朋友可以尝试下:
https://www.runoob.com/docker/docker-dockerfile.html