Introduction
The JS7 - Controller Installation for Docker Containers article explains start-up of a JOC Cockpit container using the Docker® Run
command.
The following examples apply for users who wish to start containers using the docker-compose
utility. Consider that examples have to be adjusted to individual environments.
Examples using Docker Compose with MySQL
Examples are contributed by the Japanese JS7 Community. Find the complete instructions from the Start with JS7 JobScheduler docker-compose (MySQL version) article.
Docker Compose Configuration: docker-compose.yaml
Download: docker-compose.yaml
Example for use of Docker Compose with MySQL
version: '3' services: db: image: mysql:8.0 command: --default-authentication-plugin=mysql_native_password volumes: - db_data:/var/lib/mysql ports: - "3306:3306" networks: - js7 environment: MYSQL_ROOT_PASSWORD: js7rootpassword MYSQL_DATABASE: js7db MYSQL_USER: js7user MYSQL_PASSWORD: js7password restart: "no" js7-joc-primary: depends_on: - db container_name: js7-joc-primary image: sosberlin/js7:joc-${JS7VERSION} hostname: js7-joc-primary ports: - "17446:4446" networks: - js7 volumes: - js7-joc-primary-config:/var/sos-berlin.com/js7/joc/resources/joc - js7-joc-primary-logs:/var/sos-berlin.com/js7/joc/logs environment: RUN_JS_JAVA_OPTIONS: -Xmx256m RUN_JS_USER_ID: "${JS7USERID}:${JS7GROUPID}" restart: "no" networks: js7: external: true volumes: db_data: driver: local driver_opts: type: none device: ${PWD}/db_data o: bind js7-joc-primary-config: driver: local driver_opts: type: none device: ${PWD}/js7-joc-primary-config o: bind js7-joc-primary-logs: driver: local driver_opts: type: none device: ${PWD}/js7-joc-primary-logs o: bind
Hibernate Configuration: hibernate.cfg.xml
Download: hibernate.cfg.xml
Example of hibernate.cfg.xml for MySQL
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <hibernate-configuration> <session-factory> <property name="hibernate.connection.driver_class">org.mariadb.jdbc.Driver</property> <property name="hibernate.connection.password">js7password</property> <property name="hibernate.connection.url">jdbc:mariadb://db:3306/js7db</property> <property name="hibernate.connection.username">js7user</property> <property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</property> <property name="hibernate.show_sql">false</property> <property name="hibernate.connection.autocommit">false</property> <property name="hibernate.format_sql">true</property> <property name="hibernate.temp.use_jdbc_metadata_defaults">false</property> <property name="hibernate.connection.provider_class">org.hibernate.hikaricp.internal.HikariCPConnectionProvider</property> <property name="hibernate.hikari.maximumPoolSize">10</property> </session-factory> </hibernate-configuration>
Environment Variables used with the Examples
Environment Variables used with the Examples
echo -e "JS7USERID=$(id -u)\nJS7GROUPID=$(id -g)\nJS7VERSION=2-3-2" > .env # confirm what to find from the file cat .env JS7USERID=1000 JS7GROUPID=1000 JS7VERSION=2-3-2
Directories used with the Examples
Directories used with the Examples
mkdir db_data mkdir js7-agent-primary mkdir js7-controller-primary mkdir js7-joc-primary-config mkdir js7-joc-primary-logs
Directory Hierarchy
Directories used with the Examples
. ├── .env ├── db_data ├── docker-compose.yml ├── hibernate.cfg.xml ├── js7-agent-primary ├── js7-controller-primary ├── js7-joc-primary-config └── js7-joc-primary-logs
Overview
Content Tools