一、将jar包和需要运行的相关文件DockerFile上传到指定同一目录下
dockerfile文件的内容:
二、执行镜像打包
sudo docker build . -t test-demo:v1.0
这段代码是用于构建 Docker 镜像的命令:
-
sudo
: 这是一个 Linux 命令,用于以超级用户(root)权限执行后续的命令。在某些情况下,执行 Docker 命令可能需要管理员权限,因此使用sudo
可以确保具备足够的权限。 -
docker build
: 这是 Docker 命令的一部分,用于构建 Docker 镜像。它告诉 Docker 引擎根据指定的 Dockerfile 来构建一个新的镜像。 -
.
: 这个点号表示当前目录。在构建镜像时,Docker 会将当前目录下的文件和文件夹复制到镜像中。 -
-t test-demo:v1.0
: 这是一个选项参数,用于给构建的镜像指定一个标签(tag)。-t
表示标签,test-demo
是镜像的名称,v1.0
是镜像的版本号。通过给镜像添加标签,可以更方便地识别和管理镜像。
综合起来,这段代码的含义是以超级用户权限使用当前目录下的 Dockerfile 构建一个名为 test-demo
版本为 v1.0
的 Docker 镜像。请确保在执行此命令之前已经在当前目录下准备好了 Dockerfile 文件。
三、查看镜像
docker images
由于项目中需要jdk11的环境直接通过
docker pull openjdk:11
#jdk8使用 docker pull java:8
四、启动镜像
sudo docker run -d -p 8555:8099 --name test-demo test-demo:v1.0
这段代码是在 Docker 中运行一个容器的命令:
-
sudo
: 这是一个 Linux 命令,用于以超级用户权限运行后续的命令。在某些情况下,需要使用超级用户权限才能执行 Docker 相关的操作。 -
docker run
: 这是 Docker 命令,用于创建并运行一个容器。 -
-d
: 这是一个选项,代表 "detached",意味着容器将在后台运行。这样可以让容器在后台持续运行而不会占用当前终端。 -
-p 8555:8099
: 这是一个选项,用于将容器内部的端口映射到主机上的端口。这里将容器内部的端口 8099 映射到主机上的端口 8555。这样,当您通过主机的 8555 端口访问时,请求将被转发到容器内部的 8099 端口。 -
--name test-demo
: 这是一个选项,用于为容器指定一个名称。在这种情况下,容器的名称将被设置为 "test-demo"。 -
test-demo:v1.0
: 这是指定要使用的镜像名称和标签。在这里,使用的是名为 "test-demo" 的镜像,并指定了标签为 "v1.0"。
综上所述,这段代码的作用是在 Docker 中创建并运行一个名为 "test-demo" 的容器,使用 "test-demo:v1.0" 镜像,并将容器内部的端口 8099 映射到主机上的端口 8555。容器将在后台以分离模式运行。
以上项目就启动完成了
docker ps :正在运行的容器
docker stop <name>:停止指定容器
docker start <name>:重新运行