2.9 KiB
title | description | keywords |
---|---|---|
Build a Spring Boot project | Building a Spring Boot project using Docker Assemble | Assemble, Docker Enterprise, Spring Boot, container image |
Ensure you are running the backend
before you build any projects using Docker Assemble. For instructions on running the backend, see Install Docker Assemble.
Clone the git repository you would like to use. The following example uses the docker-springfamework
repository.
~$ git clone https://github.com/anokun7/docker-springframework
Cloning into 'docker-springframework'...
«…»
When you build a Spring Boot project, Docker Assemble automatically detects the information it requires from the pom.xml
project file.
Build the project using the docker assemble build
command by passing it the path to the source repository:
~$ docker assemble build docker-springframework
«…»
Successfully built: docker.io/library/hello-boot:1
The resulting image is exported to the local Docker image store using a name and a tag which are automatically determined by the project metadata.
~$ docker image ls | head -n 2
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-boot 1 00b0fbcf3c40 About a minute ago 97.4MB
An image name consists of «namespace»/«name»:«tag»
. Where, «namespace»/
is optional and defaults to none
. If the project metadata does not contain a ‘tag’ (or a version), then latest
is used. If the project metadata does not contain a ‘name’ and it was not provided on the command line, a fatal error occurs.
Use the --namespace
, --name
and --tag
options to override each element of the image name:
~$ docker assemble build --name testing --tag latest docker-springframework/
«…»
INFO[0007] Successfully built "testing:latest"
~$ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
testing latest d7f41384814f 32 seconds ago 97.4MB
hello-boot 1 0dbc2c425cff 5 minutes ago 97.4MB
Run the container:
~$ docker run -d --rm -p 8080:8080 hello-boot:1
b2c88bdc35761ba2b99f85ce1f3e3ce9ed98931767b139a0429865cadb46ce13
~$ docker ps
CONTAINER ID IMAGE COMMAND «…» PORTS NAMES
b2c88bdc3576 hello-boot:1 "java -Djava.securit…" «…» 0.0.0.0:8080->8080/tcp silly_villani
~$ docker logs b2c88bdc3576
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v1.5.2.RELEASE)
«…» : Starting Application v1 on b2c88bdc3576 with PID 1 (/hello-boot-1.jar started by root in /)
«…»
~$ curl -s localhost:8080
Hello from b2c88bdc3576
~$ docker rm -f b2c88bdc3576