网易云镜像中心登录https://c.163yun.com/hub#/library
根据需要将镜像 docker pull下来(提示:服务器上有redis、msql等 可以后台配置直接连)
下载完成之后:docker images 查看所有镜像
msyql容器启动:(注:不是最新版的话需要指定版本 镜像名:版本号 第一次启动需要指定密码) --name 容器名 最后mysql_name为镜像名
docker run -d -e MYSQL_ROOT_PASSWORD=password -p 3306:3306 --privileged=true --name mysql mysql_name
nginx同样 pull下来 可通过 docker run --name nginx -d -p 80:80 镜像名 来启动,通过IP即可访问
启动之后可通过:docker ps 查看 后续可根据容器id进行操作
springboot项目打包成jar
linux中新建目录存放 此处新建个 /usr/local/springboot
同时在存放jar的目录下新建Dockerfile文件 vi模式下编辑内容并进行保存
FROM java:8
VOLUME /tmp
ADD xxxxxx-0.0.1-SNAPSHOT.jar app.jar
EXPOSE 8080
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
接着镜像生成: docker build -t 别名(起个镜像名) . 注:末位记得加个 .
完成之后通过docker images就能看到做的镜像
最后启动: docker run -d -p 8081:8081 镜像名
1.在宿主机先创建个nginx目录用来存放conf、conf.d、html、logs
mkdir -p /usr/nginx/{conf,conf.d,html,logs}
2、将生成的build目录下的内容放在html中
3、复制nginx配置到宿主目录 6dd为刚刚启动的nginx的容器id (复制完之后可以关掉,删除)
关掉:docker stop 6dd 删除:docker rm 6dd
docker cp 6dd:/etc/nginx/nginx.conf /usr/nginx/conf
docker cp 6dd:/etc/nginx/conf.d /usr/nginx/conf.d
4、修改配置 conf.d下的default.conf
location /{} 里面新增一行 try_files $uri $uri/ /index.html;
再次启动nginx
docker run --name nginx -d -p 80:80 -v /usr/nginx/logs:/var/log/nginx -v /usr/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /usr/nginx/conf.d:/etc/nginx/conf.d -v /usr/nginx/html:/usr/share/nginx/html nginx镜像名