目录
首先在Linux系统下安装 Docker 和 Docker Compose
- curl -fsSL https://get.docker.com -o get-docker.sh
- sudo sh get-docker.sh
这将会自动下载并运行官方安装脚本。在安装过程中,可能需要输入管理员密码。
sudo usermod -aG docker $(whoami)
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
- docker --version
- docker-compose --version
如果正常的话,这将会显示 Docker 和 Docker Compose 的版本信息。
Dockerfile 的文件,内容如下:- FROM openjdk:11-jdk
- COPY target/myproject.jar /app/myproject.jar
- WORKDIR /app
- EXPOSE 8080
- CMD ["java", "-jar", "myproject.jar"]
docker build -t myproject .
这将会根据 Dockerfile 中的指令构建一个名为 myproject 的镜像。
构建成功后,你将会看到类似如下输出:
- Sending build context to Docker daemon 10.7MB
- Step 1/5 : FROM openjdk:11-jdk
- ---> 22e10a343fd5
- Step 2/5 : COPY target/myproject.jar /app/myproject.jar
- ---> 4ffeb02e78ad
- Step 3/5 : WORKDIR /app
- ---> Running in e82ebd8b5809
- Removing intermediate container e82ebd8b5809
- ---> 6c54a211b331
- Step 4/5 : EXPOSE 8080
- ---> Running in b1af8f51e3a1
- Removing intermediate container b1af8f51e3a1
- ---> 788d0678d17d
- Step 5/5 : CMD ["java", "-jar", "myproject.jar"]
- ---> Running in 7a95569ebbc4
- Removing intermediate container 7a95569ebbc4
- ---> 5ed59d148327
- Successfully built 5ed59d148327
- Successfully tagged myproject:latest
docker run -d -p 8080:8080 --name mycontainer myproject
这将会在后台运行一个名为 mycontainer 的容器,并将宿主机的 8080 端口映射到容器的 8080 端口。
启动成功后没有输出结果。
docker ps
如果一切正常,你应该能够看到 mycontainer 容器正在运行。输出结果类似下面这样:
- CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
- 7859eefcfc76 myproject "java -jar myproject…" 31 seconds ago Up 28 seconds 0.0.0.0:8080->8080/tcp mycontainer
http://localhost:8080 并回车,如果应用程序成功启动了,你将会看到应用程序的欢迎页面。最后,通过访问 http://localhost:8080 来访问你的 Spring Boot 应用程序。