Docker¶
EuroKeep is Available For Docker¶
For now, we deploy only as is and provide the working docker-compose.yml with our deployment ZIP file. Our future target is to have an own dockerhub image that you can simply install and you’ll then not have to worry about dependencies, as we manage that.
services:
nginx.eurokeep:
image: nginx:alpine
hostname: 'nginx.eurokeep'
container_name: nginx.eurokeep
restart: unless-stopped
volumes:
- ./var/www:/var/www/
- ./var/log/nginx:/var/log/nginx/
- ./etc/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf
environment:
- PROJECT_DIR=/var/www
depends_on:
- php.eurokeep
php.eurokeep:
image: adhocore/phpfpm:8.3
hostname: 'php.eurokeep'
container_name: 'php.eurokeep'
restart: unless-stopped
volumes:
- ./var/www:/var/www/
depends_on:
- redis.eurokeep
- memcached.eurokeep
redis.eurokeep: # redis cache server
image: redis:latest
hostname: 'redis.eurokeep'
container_name: 'redis.eurokeep'
networks:
internal:
restart: unless-stopped
volumes:
- ./redis:/data
command: ["redis-server", "--appendonly", "yes"]
memcached.eurokeep: # memcached cache server
image: memcached:alpine
hostname: 'memcached.eurokeep'
container_name: 'memcached.eurokeep'
restart: unless-stopped
networks:
internal:
mariadb: # mariadb SQL server
image: mariadb:latest
hostname: 'mariadb.eurokeep'
container_name: 'mariadb.eurokeep'
restart: unless-stopped
networks:
internal:
volumes:
- ./data:/var/lib/mysql
environment:
- MARIADB_ROOT_PASSWORD=root
Running Commands¶
Many management commands need to be executed in the PHP container, since they are part of the CakePHP binaries.
The following command lets you ssh into the terminal of the container running php. Here you can run the setup commands, e.g. create a new user.