You must have Docker Engine installed as per https://docs.docker.com/install for this installation option.
Start command session to Docker host and make sure you can run docker commands. If necessary sudo to root or other user.
Here are main steps for this type of docker image. If you are trying to upgrade FlexDeploy for Docker, please following FlexDeploy Upgrade - Docker.
- Setup docker volume folder and copy plugins in it from download zip.
- Setup FlexDeploy Database
- Pull docker image
- Start container using specific image.
Step 1 - Setup Docker Volume Folder on Docker Host
This particular image only contains FlexDeploy with Tomcat, i.e. data and artifact repository is not part of the container. Hence we need to setup Database and various Folders first. You will also need to download FlexDeploy Tomcat distribution for database scripts and plugins.
In this step, we will setup application and repository folder, then copy plugins from download zip in to necessary folder.
# adjust folder location as necessary for your Docker Host
mkdir -p /scratch/DockerVolume/flexdeploy
chmod -R 777 /scratch/DockerVolume
cp ~/Tomcat_Complete-126.96.36.199/application/plugins/*.jar .
# ready with docker volume now
If you need to use additional libraries or file you can place them under /scratch/DockerVolume/flexdeploy. For example, if you unzip SQLcl zip file under /scratch/DockerVolume/flexdeploy, you can reference it as /home/oracle/sqlcl from container (including LOCALHOST endpoint), assuming sqlcl folder is created when SQLcl is unzipped.
Step 2 - Setup FlexDeploy Database
Setup database as described in Installation Instructions - Database Tier.
Step 3 - Pull Docker Image
First let's pull docker image flexdeploy/fd_tcat. If you would like a version other than the latest specifiy a tag. E.G. 188.8.131.52
docker pull flexdeploy/fd_tcat
Step 4 - Run Docker Container
Now let's run FlexDeploy docker image. Adjust image version as necessary.
This particular image contains only FlexDeploy with Tomcat, i.e. data and artifact repository is not part of the container. So we need to pass various details to docker run command.
Run command example below uses port number 8004 for access to FlexDeploy application, which maps to 8080 port inside docker container. The database is referenced using dbtype (oracle or postgres), FLEX_DB_URL environment variable and FD_ADMIN_PWD is password for fd_admin user on your database (setup done in Step 2). Adjust Port Numbers, URL, Password, Docker Volume Folder, Timezone as appropriate for your docker host.
docker run --name flexdeploy56 -p 8004:8080 -e FLEX_DB_URL="jdbc:oracle:thin:@184.108.40.206:1521:xe" -e FD_ADMIN_PWD="welcome1" -e TZ=America/Chicago -e dbtype=oracle|postgres -v /scratch/DockerVolume/flexdeploy:/home/oracle flexdeploy/fd_tcat
Example JDBC URL (FLEX_DB_URL)
- Localhost XE connection will look like this. jdbc:oracle:thin:@localhost:1521:XE
- SID based JDBC URL Syntax - jdbc:oracle:thin:@HOSTNAME:PORT:SID
- Service Name based JDBC URL Syntax - jdbc:oracle:thin:@//HOSTNAME:PORT/SERVICENAME
Now you can look at logs and other details in docker volume folder. For example,
If necessary, make sure to open port 8004 for access from outside docker host.
Now you can launch FlexDeploy using http://<docker host>:8004/flexdeploy.
As always when you first launch FlexDeploy, you will need to complete Registration process.
Once you complete registration, you are ready to use FlexDeploy.