docker入门篇 部署springboot项目
安装docker
使用docker
注册docker服务
systemctl enable docker
systemctl status docker
然后在/etc/docker/
目录下 新建daemon.json
文件
添加内容
{
"registry-mirrors": ["https://zfzbet67.mirror.aliyuncs.com"]
}
之后重启docker
systemctl daemon-reload
systemctl restart docker
下载java8
docker pull java:8
安装mysql
-p:映射自己端口和容器端口
--name:设置容器名字
-eMYSQL_ROOT_PASSWORD:初始化root密码
-d 后台运行。
docker pull mysql:5.6
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123123 -d mysql
安装redis
redis-server --appendonly yes:在容器执行redis-server启动命令,并打开redis持久化配置
docker pull redis
docker run --name redis -p 6379:6379 -d redis redis-server --appendonly yes
创建 springboot image
由于打包jar包一直出错 因此打成了war包
创建Dockerfile
文件,编写如下内容
FROM java:8
VOLUME /tmp
ADD o2o.war /o2o.war
RUN bash -c 'touch /o2o.war'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/o2o.war"]
执行:docker build -t springboot .
用docker images
即可发现生成了一个叫springboot
的镜像
执行springboot镜像
docker run -d -p 80:80 --name springboot --link mysql:mysql --link redis:redis springboot
用link连接我们的其他已启动的容器就行了。注意这里的第一个mysql,redis已启动的容器的名称。
第二个是我们设置的别名
参数-v dir1:dir2 表示docker容器挂载主机dir1的东西,然后再容器内地址为dir2