Workshop 2: Multicontainer Scenarios in Docker
Workshop 2: Multicontainer Scenarios in Docker Nextcloud deployment We will deploy the nextcloud application with a database (you can choose mariadb or PostgreSQL) using the docker-compose application. You can take as model the file ‘docker-compose.yml’ that we have studied to display WordPress.
Install docker- compose on your computer. Within a directory creates a ‘docker-composer.yml’ file for the deployment of nextcloud with a database. Remember the environment variables and the persistence of information. javiercruces@docker:~/taller2$ cat docker-compose.yaml version: '2' volumes: nextcloud: db: services: db: image: mariadb:10.6 restart: always command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW volumes: - db:/var/lib/mysql environment: - MYSQL_ROOT_PASSWORD=root - MYSQL_PASSWORD=javiercruces - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud app: image: nextcloud restart: always ports: - 8081:80 links: - db volumes: - nextcloud:/var/www/html environment: - MYSQL_PASSWORD=javiercruces - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud - MYSQL_HOST=db Raise the stage with ‘docker-compose’. javiercruces@docker:~/taller2$ docker compose up -d [+] Running 2/2 ✔ Container taller2-db-1 Started 0.0s ✔ Container taller2-app-1 Started 0.0s Show the containers with ‘docker-compose’. javiercruces@docker:~/taller2$ docker compose ps NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS taller2-app-1 nextcloud "/entrypoint.sh apache2-foreground" app 7 minutes ago Up 5 minutes 0.0.0.0:8081->80/tcp, :::8081->80/tcp taller2-db-1 mariadb:10.6 "docker-entrypoint.sh --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW" db 7 minutes ago Up 5 minutes 3306/tcp Access the application and check that it works.