Docker部署应用指南
Docker部署应用指南
文章目录
一、Docker的安装
Docker的安装在不通操作系统下有不同的安装方式
1.win7、win8安装docker
win7、win8 等需要利用 docker toolbox 来安装,国内可以使用阿里云的镜像来下载下载地址:http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/ (没有安装git的则需勾选Git for Windows)
安装完成后桌面会有这三个程序
点击 Docker QuickStart 图标来启动 Docker Toolbox 终端,如果docker安装成功则会出现下图
(其中 【192.168.99.100】是VirtualBox中名字为【default】虚拟机的ip地址。)
2.win10安装docker
Docker for Windows分为企业版>教育版>专业版>家庭版。(家庭版的不能开启Hyper-V,所以最低要专业版)
如果系统不符合运行Docker for Windows的要求,则可以安装Docker Toolbox,Dockbox Toolbox使用Oracle Virtual Box而不是Hyper-V。
在控制面板>程序和功能>打开或关闭Windows功能勾选Hyper-V
然后在CMD下运行此命令开启Hyper-V
bcdedit /set hypervisorlaunchtype auto
这样就可以下载安装包了,在docker官网下载Docker for Windows https://www.docker.com/get-started
下载完进行安装启动,右下角会有小图标出现显示Docker Desktop is running 就说明docker启动好了。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wnTJeKan-1584088770233)(C:\Users\51966\AppData\Roaming\Typora\typora-user-images\image-20200313142208712.png)]
3.linux下安装docker
* 安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
* 设置阿里云镜像源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
* 安装 Docker-CE
yum install docker-ce
* 启动 Docker-CE
systemctl enable docker
systemctl start docker
二、制作docker镜像
1.通过dockerfile在本地制作镜像
创建一个文件夹,里面放入打包好的war或者jar包,还需放入docekrfile文件,然后通过docker bulid命令来制作镜像
Dockerfile文件:
FROM java:8
ADD blog-2.2.0.RELEASE.jar app.jar
ADD application.yml /
RUN bash -c 'touch /app.jar'
EXPOSE 8084
ENTRYPOINT [ "java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/app.jar" ]
在dockerfile当前路径下输入命令 :docker build -t [镜像名称] [本地路径] 命令来制作镜像
docker build –t mytest .
2.利用maven插件来进行制作镜像,并推送到远程仓库中(阿里云仓库)
在项目的pom.xml中加入插件信息,再配置maven的setting.xml在servers节点下添加阿里云仓库的账号信息。
pom.xmlr如下:
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.13</version>
<configuration>
<!--镜像名称-->
<imageName>${docker.repostory}/${docker.registry.name}</imageName>
<!--指定标签-->
<imageTags>
<imageTag>blog2</imageTag>
</imageTags>
<!-- 指定Dockerfile所在的路径 -->
<dockerDirectory>./</dockerDirectory>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
<serverId>docker-aliyun</serverId>
<registryUrl>${docker.repostory}</registryUrl>
<pushImage>true</pushImage>
</configuration>
</plugin>
maven的setting.xml
<server>
<!--maven的pom中可以根据这个id找到这个server节点的配置-->
<id>docker-aliyun</id>
<!--这里是在阿里云注册的账号-->
<username>xxx</username>
<!--这里是在阿里云注册的密码-->
<password>xxx</password>
<configuration>
<!--这是在阿里云注册时填写的邮箱-->
<email>aaa@qq.com</email>
</configuration>
</server>
最后通过maven插件的docker build 命令
三、镜像的拉取、导入、导出
*镜像的拉取 //默认在docker Hub中拉取镜像
docker pull [镜像名称]:[镜像版本号]
docker pull registry.cn-hangzhou.aliyuncs.com/kinggrid/yypt:[镜像版本号]
例:docker pull redis
*镜像的导出
docker save -o [.tar文件的名称] [镜像名称] (导出镜像)
例: docker save -o images.tar myblog
(docker export -o images.tar myblog (导出容器))
*镜像的导入
docker load -i images.tar 导入镜像
(docker import images.tar myblog (导出容器))
四、容器部署
*容器部署
docker run -d -p [宿主机的端口号]:[容器的端口号] -v [挂载的本地路径]:[容器内部路径] --name=[命名容器的名称] [镜像名]
例:
docker run -d -p 8084:8084 -v "G:/dockerfile/application.yml":/application.yml --name=myblog myblog
上一篇: 如何把asp网站转成php
下一篇: PHP服务器变量$_SERVER用法详解
推荐阅读
-
详解springboot项目docker部署实践
-
Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数示例代码
-
Spring Boot应用发布到Docker的实现
-
SpringBoot应用部署于外置Tomcat容器的方法
-
Spring Boot与Docker部署实践
-
spring Boot 应用通过Docker 来实现构建、运行、发布流程
-
Android应用程序窗口(Activity)窗口对象(Window)创建指南
-
详解springboot项目docker部署实践
-
Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数示例代码
-
html5指南-6.如何创建离线web应用程序实现离线访问