docker构建spring boot 简单demo

来源:互联网 发布:红警数据恢复 编辑:程序博客网 时间:2024/05/29 19:13

笔者也是刚刚接触docker 和spring boot ,花了2天时间初步能将一个boot项目部署进docker,算是入门。也和大家分享一下,如果有不对的地方还请多多交流。

Docker安装
系统环境:CentOS 7
1、先卸载自带的docker
查询

 yum list installed | grep docker

卸载

yum -y remove docker-engine.x86_64yum remove -y docker-engine-selinux.noarch

2、升级本地yum包

 yum update

3、 添加yum 仓库配置

tee /etc/yum.repos.d/docker.repo <<-'EOF'> [dockerrepo]> name=Docker Repository> baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/> enabled=1> gpgcheck=1> gpgkey=https://yum.dockerproject.org/gpg> EOF

4、安装docker

yum install docker-engine

5、启动

service docker start

6、设置开机启动

chkconfig docker on

7、镜像加速
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://ff8d923d.m.daocloud.io
service docker restart

以上为笔者收集并且安装成功的命令,供大家参考。

docker镜像下载

先搜索

 docker search centos7

搜出来一堆,由于spring-boot 只需要java环境,所以我这边选择了flyceek/centos7-jdk
下载镜像

docker pull flyceek/centos7-jdk

查看镜像
docker images
可以看到本地以及有镜像了

构建一个拥有spring boot项目的镜像(通过Dockerfile build来构建)
1、首先我们需要一个spring boot项目,项目代码上传至开源git上:https://git.oschina.net/siliangysd/spring-boot.git
把项目down下来之后,给项目打包,mvn clean package-Dmaven.test.skip=true
2、创建Dockerfile文件:

FROM flyceek/centos7-jdk    VOLUME /tmpADD spring-boot/target/spring-boot.jar app.jarRUN bash -c 'touch /app.jar'ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

FROM 为你需要使用的基础镜像
VOLUME /tmp创建/tmp目录并持久化到Docker数据文件夹,因为Spring Boot使用的内嵌Tomcat容器默认使用/tmp作为工作目录
ADD spring-boot-docker-0.1.0.jar app.jar 将应用jar包复制到/app.jar
ENTRYPOINT表示容器运行后默认执行的命令

3、构建应用镜像

docker build -t siliang/spring-boot-app .

最后的 . 是Dockerfile的路径,可以是绝对路径。

4、运行容器

docker run -d -p 8080:8080 --name sample-app siliang/spring-boot-app

-d 是后台运行,-p 是将容器的8080端口映射至主机的8080端口,这样就可以直接访问。-name 相当于别名的意思。
5、访问:http://xxx.xxx.xxx.xxx:8080/index
能访问到说明成功了。

原创粉丝点击