龙空技术网

Docker之修改镜像内部并上传Docker hub

数据分析青青 61

前言:

眼前小伙伴们对“docker镜像配置文件修改”大致比较关注,姐妹们都想要了解一些“docker镜像配置文件修改”的相关内容。那么小编在网上汇集了一些关于“docker镜像配置文件修改””的相关文章,希望小伙伴们能喜欢,大家快快来学习一下吧!

应用场景:昨天在用docker部署项目时,生成镜像并启动。但是当我又修改了项目时,再刷新项目,并未更新。随后开始排查问题,下面将解决思路及用到的命令记录下来。

先说解决方式:

由于利用docker部署,其实在docker内部拷贝了一份项目,而你修改源目录的项目时不起作用的,替换一下就好了

我的Dockerfile

图中/usr/src/app就是我将项目存到docker中的地址,将docker中的项目替换成更新的源目录项目

sudo docker cp /home/ubuntu/originblog-master/app/ 你的容器ID:/usr/src

替换成功后,重新启动下镜像,更新的内容就生效了。

下面是解决问题时用到的命令(可忽略)1、Docker 删除镜像

①. 删除前需要保证容器是停止的 stop ②. 需要注意删除镜像和容器的命令不一样。 docker rmi ID ,其中 容器(rm) 和 镜像(rmi) ③. 顺序需要先删除容器

2、docker修改镜像名称

docker tag 镜像ID REPOSITORY:TAG 
3、解决Docker无法删除镜像 - image is referenced in multiple
docker rmi ace-gate:v9(加上TAG就行了)
4、docker镜像内的文件互相拷贝将本地文件拷贝到docker 镜像内
docker cp /Users/howey/Documents/apache-maven-3.5.2/ 749056ea1637:/optdocker cp 本地路径 容器Id或name:容器目录
将docker内文件拷贝到本地文件夹内
docker cp 749056ea1637:/Users/howey/Documents/apache-maven-3.5.2 /opt/docker cp 容器Id:本地路径 镜像路径
5、如何将自己的镜像上传到Docker hub上

①.首先需要拥有自己的Docker hub账号,注册地址

②.使用Docker hub账号在验证本地登录

docker login

③.先docker images看看本地的镜像

如果REPOITORY的名不是你Docker hub账号和仓库,即Docker ID/仓库名,是上传不成功的,当然可以使用下面命令更改

docker tag 镜像ID 用户名称/镜像源名(repository name):新的标签名(tag)

④ 提交修改,生成一个新版本,-m为添加注释;-a是作者;后面546598027dda 是容器ID;后面跟的是你要生成的镜像的名字。

docker commit -m "Added a new image" -a "cherich" 546598027dda cherichsun/originblog:0.1

④.使用docker push命令将镜像上传到docker hub的仓库

docker push <hub-user>/<repo-name>:<tag>

⑤.登录到自己的Docker hub上验证

6、进入容器内部

 docker exec -it  blog /bin/sh(可能docker版本的原因,我用这个命令可以进去) docker exec -it  blog /bin/bash
7、如何将自己的镜像拉到服务器上

进入你自己的docker hub

docker pull cherichsun/originblog:0.1

好了,可以在当前服务器上启动镜像,可以运行了。是不是超级简单呢?

标签: #docker镜像配置文件修改 #docker 如何修改镜像文件 #docker修改镜像名称