Docker
OPENJDK本身的docker占用526M ,昨天我在本地测试的,加上我们的项目大小,最终创建的镜像大小大概是526M+项目大小,镜像大小大概这么多,我们需要先在服务器上安装docker,之后安装dockerOpenJDK,之后再依据这两个就可以制作docker镜像
docker启动的时候是需要依据镜像创建容器,可以创建多个容器,容器内外的端口号可以不一致,可以将容器内的8081映射到80或者其他外部机端口,里面包含的命令以及大概的创建方法如下:
制作镜像并启动
1.新建文件夹mkdir,cd到里面vim编写文件:Dockerfile(文件名不可以改)
内容:
FROM openjdk:8
COPY test.jar docker.jar #这一步不可以跳过,本质是为了留档
RUN bash -c "touch /docker.jar" #使用bash
EXPOSE 80 #写项目配置文件里的启动端口号
ENTRYPOINT ["java","-jar","docker.jar"] #写执行命令
2.执行build创建容器 -t 后面的是容器名称 “.” 指的是当前目录
docker build -t test .
上面命令最后有个点不能忘记
3.查看当前所有容器
docker image ls
4.启动容器
docker run -d -p 8081:80 test
-p重新映射端口,test是容器名
返回一个容器ID
5.重启整个docker
systemctl restart docker
6.依据ID开启容器
docker start 9290e656a8afc15ccb6522167af22517d4f8415bba9a1aa6e9b317dd9b5dd2cb
关于怎么部署到我们自己的服务器上:
这个镜像包有点大,大概五百多M,而且一个镜像里面是可以塞多个项目,而且能启动多次,可以映射为多个端口
1.保存镜像为本地文件:
docker save -o 文件名 镜像名
docker save -o test.tar test
2. 从文件载入镜像:
docker load --input 文件名
docker load -i test.tar
3.启动镜像
docker run -d(后台启动) -p(端口从容器的多少,映射到外部的多少) 镜像名
docker run -d -p 80:8082 test
docker ps 查看当前所有运行中的容器
docker stop {CONTAINERID}关闭容器