Docker打包镜像及修改配置的实现

最近在学习Docker和实际操作中遇到了不少问题,写篇博客记录一下。

安装

我安装的是windows版的docker desktop,在windows上用docker挺麻烦的,要配置一些东西,在windows上安装docker desktop。

安装完成后,以管理员身份运行一般都能跑起来,如果遇到 Docker Access Denied 报错打不开的情况,需要把计算机当前用户加入到docker-users用户组里面。

Docker打包镜像及修改配置的实现_第1张图片

打开命令行工具输入下面命令检验docker是否安装成功:

Docker打包镜像及修改配置的实现_第2张图片

甚至可以跑个hello-world:

Docker打包镜像及修改配置的实现_第3张图片

打包镜像

我们都知道打包命令是 docker build ,除此之外,还需要一个 Dockerfile 文件,命令行打包就不介绍了,分享一个vscode插件,就叫Docker!

Docker打包镜像及修改配置的实现_第4张图片

安装好了后侧边栏会多一个小鲸鱼,我们可以看到容器的状态和镜像,前提是docker desktop成功安装了。

Docker打包镜像及修改配置的实现_第5张图片

然后在我们的 Dockerfile 文件上右键,点击 build image ,会提示你输入一个镜像的名称,然后回车就ok了。

Docker打包镜像及修改配置的实现_第6张图片

运行容器并添加环境变量

有时项目正常运行需要依赖一些环境变量,我们可以通过 -e 指令添加:

docker run -p 4000:4000 -e env1=xxxx -e env2=yyyy ImageID

运行容器并自定义容器名称

我们运行两次 hello-world 后打开 docker desktop,可以发现每次运行的容器名称貌似是随机分配的

Docker打包镜像及修改配置的实现_第7张图片

我们可以使用 –name 指定容器的名称:

docker run --name hello hello-world

运行结果:

Docker打包镜像及修改配置的实现_第8张图片

Docker 修改 host

使用docker run运行一个新的容器的时候,通过参数 –add-host 来添加域名和IP信息到容器的/etc/hosts文件中:

docker run -p 8080:8080 --add-host=hostname:127.0.0.1 ImageID

导出镜像到本地

当我们开发把项目打包好镜像后,可能需要给运维或后端人员进行部署测试,可以使用 save -o 命令把镜像导出:

docker save -o .\保存的路径\镜像文件名 镜像

比如:
dicker save -o .\Desktop\hello.tar hello-world

个人觉得使用 docker hub 会更方便!

到此这篇关于Docker打包镜像及修改配置的实现的文章就介绍到这了,更多相关Docker打包镜像及配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(Docker打包镜像及修改配置的实现)