What will docker-compose contain?
- Database:
mysql/mariadb
- Website:
wordpress
- Admin:
phpmyadmin
- Proxy:
traefik
- Cache:
redis
- Monitoring:
cadvisor
- Management:
portainer
- Vault:
a tool for securely accessing secrets
- Code:
online vscode
apt-get update
apt-get install -y apt-transport-https ca-certificates curl gnupg2 software-properties-common
curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
apt-get update
apt-get install -y docker-ce docker-ce-cli containerd.io
docker --version
docker-compose --version
docker run hello-world
usermod -aG docker $USER
su - $USER
docker run hello-world
docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)
sudo apt-get install -y python3-pip
pip3 install docker-compose
docker-compose --version
docker-compose up -d
docker-compose down
cd test
docker-compose up -d
docker-compose down
docker-compose down --volumes
docker-compose down --rmi all
docker-compose down --volumes --rmi all
docker-compose exec wordpress wp plugin install woocommerce --activate
docker-compose exec wordpress wp plugin install stripe-for-woocommerce --activate
docker-compose exec --user root wordpress wp plugin install woocommerce --activate
docker-compose exec --user root wordpress wp plugin install stripe-for-woocommerce --activate
python -m cli gen-dc test
python -m cli gen-dc test --force
python -m cli gen-dc test --start
python -m cli gen-dc test --force --start
python -m cli gen-dc test --start --open
python -m cli gen-dc test --force --start --open
python -m cli gen-dc test --start --open --import
Generate Docker Compose File and Start Services and Open Browser and Import Products if already exists (overwrite)
python -m cli gen-dc test --force --start --open --import
python -m cli gen-dc test --start --open --plugins --themes
Generate Docker Compose File and Start Services and Install Plugins or Themes if already exists (overwrite)
python -m cli gen-dc test --force --start --open --plugins --themes
python -m cli gen-dc test --start --open --plugins --themes --import
mkdir -p /tmp/test
cd /tmp/test
curl -X 'POST' \
'http://localhost:5000/docker-compose' \
-H 'accept: application/json' \
-H 'Content-Type: text/plain' \
-d 'HOST_HOSTNAME=website
HOST_IP=127.0.0.1
HOST_MAC=00:00:00:00:00:00
HOST_CPU=4
HOST_RAM=8GB
HOST_OS=Ubuntu
HOST_KERNEL=5.4.0
HOST_DOCKER=true
CACHE_HOST=cache
CACHE_PORT=6379
DATABASE_HOST=database
DATABASE_PORT=3306
DATABASE_NAME=vinci
DATABASE_USER=vinci
DATABASE_TABLE_PREFIX=wpapp_
WEBSITE_TITLE=VinciPizzeria
WEBSITE_HOSTNAME=vincipizzeria.nl
WEBSITE_NAME=vinci
WEBSITE_ADMIN_FIRSTNAME=Vakif
WEBSITE_ADMIN_LASTNAME=Inci
WEBSITE_ADMIN_USERNAME=vinci
WEBSITE_ADMIN_EMAIL=admin@vincipizzeria.nl
MAIL_SMTP_HOST=smtp.vincipizzeria.nl
MAIL_SMTP_PORT=587
MAIL_SMTP_USER=admin@vincipizzeria.nl
MAIL_SMTP_PROTOCOL=tls
WORDPRESS_REDIS_HOST=cache
WORDPRESS_REDIS_PORT=6379
WORDPRESS_CACHE_ENABLED=true
WORDPRESS_CACHE_DURATION=1440
WORDPRESS_CACHE_TYPE=redis
PMA_USER=phpmyadmin_user
WOOCOMMERCE_ENABLED=true
WOOCOMMERCE_TAX_ENABLED=true
WOOCOMMERCE_TAX_COUNTRY=BE
WOOCOMMERCE_TAX_STATE=Vlaams-Brabant
WOOCOMMERCE_TAX_RATE=21
WOOCOMMERCE_TAX_SHIPPING_ENABLED=true
WOOCOMMERCE_TAX_SHIPPING_TAX_CLASS=standard
WOOCOMMERCE_TAX_SHIPPING_TAX_RATE=21
WOOCOMMERCE_TAX_SHIPPING_TAX_PRIORITY=1
WOOCOMMERCE_URL=https://vincipizzeria.nl
WOOCOMMERCE_KEY=ck_cc98aff2b3e87a082f0bed39f42d5e618ae2e354
WOOCOMMERCE_SECRET=cs_bedb5887c9294e347eb3579ea18ce72fbbf6f633
WOOCOMMERCE_CURRENCY=EUR
WOOCOMMERCE_CURRENCY_POSITION=right
WOOCOMMERCE_CURRENCY_THOUSANDS_SEPARATOR=.
WOOCOMMERCE_CURRENCY_DECIMAL_SEPARATOR=,
WOOCOMMERCE_CURRENCY_DECIMALS=2
REMOTE_SERVER_USERNAME=root
REMOTE_SERVER_IP=vincipizzeria.nl
REMOTE_SERVER_PORT=22
REMOTE_SERVER_PATH=/tmp
PROXY_TITLE=proxy
PROXY_HOSTNAME=proxy
' >> docker-compose.yml
mkdir -p /tmp/test
cd /tmp/test
curl -X 'POST' \
'http://localhost:5000/docker-compose' \
-H 'accept: application/json' \
-H 'Content-Type: text/plain' \
-d 'HOST_HOSTNAME=website
HOST_IP=127.0.0.1
HOST_MAC=00:00:00:00:00:00
HOST_CPU=4
HOST_RAM=8GB
HOST_OS=Ubuntu
HOST_KERNEL=5.4.0
HOST_DOCKER=true
CACHE_HOST=cache
CACHE_PORT=6379
DATABASE_HOST=database
DATABASE_PORT=3306
DATABASE_NAME=vinci
DATABASE_USER=vinci
DATABASE_TABLE_PREFIX=wpapp_
WEBSITE_TITLE=VinciPizzeria
WEBSITE_HOSTNAME=vincipizzeria.nl
WEBSITE_NAME=vinci
WEBSITE_ADMIN_FIRSTNAME=Vakif
WEBSITE_ADMIN_LASTNAME=Inci
WEBSITE_ADMIN_USERNAME=vinci
WEBSITE_ADMIN_EMAIL=admin@vincipizzeria.nl
MAIL_SMTP_HOST=smtp.vincipizzeria.nl
MAIL_SMTP_PORT=587
MAIL_SMTP_USER=admin@vincipizzeria.nl
MAIL_SMTP_PROTOCOL=tls
WORDPRESS_REDIS_HOST=cache
WORDPRESS_REDIS_PORT=6379
WORDPRESS_CACHE_ENABLED=true
WORDPRESS_CACHE_DURATION=1440
WORDPRESS_CACHE_TYPE=redis
PMA_USER=phpmyadmin_user
WOOCOMMERCE_ENABLED=true
WOOCOMMERCE_TAX_ENABLED=true
WOOCOMMERCE_TAX_COUNTRY=BE
WOOCOMMERCE_TAX_STATE=Vlaams-Brabant
WOOCOMMERCE_TAX_RATE=21
WOOCOMMERCE_TAX_SHIPPING_ENABLED=true
WOOCOMMERCE_TAX_SHIPPING_TAX_CLASS=standard
WOOCOMMERCE_TAX_SHIPPING_TAX_RATE=21
WOOCOMMERCE_TAX_SHIPPING_TAX_PRIORITY=1
WOOCOMMERCE_URL=https://vincipizzeria.nl
WOOCOMMERCE_KEY=ck_cc98aff2b3e87a082f0bed39f42d5e618ae2e354
WOOCOMMERCE_SECRET=cs_bedb5887c9294e347eb3579ea18ce72fbbf6f633
WOOCOMMERCE_CURRENCY=EUR
WOOCOMMERCE_CURRENCY_POSITION=right
WOOCOMMERCE_CURRENCY_THOUSANDS_SEPARATOR=.
WOOCOMMERCE_CURRENCY_DECIMAL_SEPARATOR=,
WOOCOMMERCE_CURRENCY_DECIMALS=2
REMOTE_SERVER_USERNAME=root
REMOTE_SERVER_IP=vincipizzeria.nl
REMOTE_SERVER_PORT=22
REMOTE_SERVER_PATH=/tmp
PROXY_TITLE=proxy
PROXY_HOSTNAME=proxy
' >> docker-compose.yml
docker-compose up -d