Hero Image
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 Docker Compose. You can use the docker-compose.yml file we studied for the WordPress deployment as a model. Install Docker Compose on your computer. Within a directory, create a docker-compose.yml file to deploy Nextcloud with a database. Remember to configure the environment variables and data persistence. 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 Start the scenario using docker compose up -d. javiercruces@docker:~/taller2$ docker compose up -d [+] Running 2/2 ✔ Container taller2-db-1 Started 0.0s ✔ Container taller2-app-1 Started 0.0s Display the containers using docker compose ps. 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 via a browser and verify that it works correctly.