简单的Dockerfile
#基于openjdk8完全环境(openjdk:8-jdk-alpine 为精简)
FROM openjdk:8-jdk
#复制文件
COPY target/server-manager.jar server-manager.jar
COPY target/server-manager_lib server-manager_lib
#启动镜像时执行的命令
ENTRYPOINT ["java","-jar","server-manager.jar"]
目录结构像这样
在终端执行命令:(本机子已经安装了docker)
#当前目录:/Users/yuwan/IdeaProjects/ServerManager
docker build -f Dockerfile -t sm:v1 .
-f 指定Dockerfile,如果不指定就默认当前
-t 类似给镜像指定名字和版本,这里版本为v1
注意命令最后面有个点「.」表示当前目录(此处坑了我半个小时)
(docker build 命令还有许多参数,这里只用了简单的,详情可去百度,或者 docker build --help)
build完成后查看镜像可以看到已经有我们刚刚build的 「sm」镜像了,tag是 v1
#查看镜像
docker images
然后启动他即可
#使用镜像并启动,我这里因为是web项目,所以映射了一个端口和指定了一个名字 smtest
docker run -p 1443:1443 --name smtest sm:v1
可能会用到的docker 命令:
#查看已经部署了的镜像
docker ps #正在运行
docker ps -a #未运行
#启动
docker run CONTAINER_ID # docker ps -a 可看到 CONTAINER_ID
#停止
docker stop CONTAINER_ID # docker ps -a 可看到 CONTAINER_ID
#删除镜像
docker rmi imagesId #docker images 可看到 imagesId
#删除部署了的镜像
docker rm CONTAINER_ID # docker ps -a 可看到 CONTAINER_ID