1.安装jdk8
docker pull java:8
发现报错了,查看一下报错信息
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
不存在???查一下docker
docker search java
通过官方了解到 java镜像已经弃用,请使用 openjdk
docker pull openjdk:8
报错了,查看
[root@localhost docker]# docker pull openjdk:8
8: Pulling from library/openjdk
001c52e26ad5: Retrying in 1 second
d9d4b9b6e964: Retrying in 1 second
2068746827ec: Retrying in 1 second
9daef329d350: Waiting
d85151f15b66: Waiting
52a8c426d30b: Waiting
8754a66e0050: Waiting
error pulling image configuration: download failed after attempts=6: dial tcp 104.18.125.25:443: i/o timeout
排查,发现是docker的daemon.json没有配置拉取镜像的源造成的
配置一下daemon.json
vi daemon.json
写入信息
{
"registry-mirrors":["https://hub-mirror.c.163.com","https://registry.aliyuncs.com","https://registry.docker-cn.com","https://docker.mirrors.ustc.edu.cn"],
"data-root": "/var/lib/docker",
"live-restore": true,
"log-driver": "json-file",
"log-opts": {
"max-file": "3",
"max-size": "10m"
}
}
保存,重启docker
systemctl daemon-reload
systemctl restart docker
重新执行拉取pull
docker pull openjdk:8
安装完成,查看java是否已经安装成功
docker images
安装openjdk 8 已经完成
2.部署springboot2项目
迁移springboot项目到指定地址,sayHello.jar到自定义路径/root/docker-file
创建dockerfile文件
touch sayHello_dockerfile
编辑 sayHello_dockerfile 文件
#基础镜像使用jdk1.8
FROM openjdk:8
#作者
MAINTAINER zdysoft <zdysoft@126.com>
# 设置时区
ENV TZ=Asia/Shanghai
# VOLUME 指定临时文件目录为/tmp,在主机/var/lib/docker目录下创建了一个临时文件并链接到容器的/tmp
VOLUME /tmp
#将jar包添加到容器中并更名,与COPY类似
ADD sayHellow.jar test_say.jar
#暴露的端口
EXPOSE 8088
#执行命令运行项目
ENTRYPOINT ["java","-jar","test_say.jar"]
PS:dockerfile文件还有很多信息可以配置,这里不一一介绍
开始制作镜像
docker build -f ./sayHello_dockerfile -t test_say .
查看镜像通过docker images
运行镜像
docker run -p 8090:8082 test_say
后台启动
--name 知道容器启动的昵称别名 -d 后台启动 8090容器暴露的端口 test_say上面生成的镜像名
docker run --name sayHello-app -d -p 8090:8080 test_say
完成。
3.部署vue项目
先部署nginx
docker pull nginx:latest
迁移vue打包好的项目dist到指定路径,在此路径下放置nginx.conf文件
PS:可在官网上(nginx: download)下载一个文件,解压后拿到此文件变更一下相关接口上传到此路径
编辑一个dockerfile文件
vi Dockerfile
编辑内容
FROM nginx
#作者
MAINTAINER zdysoft
# 将dist文件中的内容复制到 /usr/share/nginx/html/ 这个目录下面
COPY dist/ /usr/share/nginx/html/
COPY nginx.conf /etc/nginx/nginx.conf
RUN echo 'echo nginx with dist init ok!!'
保存后,创建镜像
docker build -t docker-vue .
执行结果并查看:
执行镜像
#--name:创建的容器名称 -d:后台启动
docker run -d --name bm-docker-vue -p 8081:80 docker-vue
完成。