====== Docker ====== Good tool for management : https://portainer.io/ Start docker container start portainer local url : [[http://localhost:9000/|portainer]] docker run -p 2181:2181 -p 9092:9092 --env ADVERTISED_HOST=`docker-machine ip \`docker-machine active\`` --env ADVERTISED_PORT=9092 spotify/kafka export KAFKA=`docker-machine ip \`docker-machine active\``:9092 export ZOOKEEPER=`docker-machine ip \`docker-machine active\``:2181 ./kafka-console-producer.sh --broker-list $KAFKA --topic test ./kafka-console-consumer.sh --zookeeper $ZOOKEEPER --topic test yehuda@yehudakoLapHz ~/Projects/private/crm/docker-compose-lamp % cat docker-compose.yml version: "3" services: webserver: build: context: ./bin/webserver container_name: '7.2.x-webserver' restart: 'always' ports: - "${HOST_MACHINE_UNSECURE_HOST_PORT}:80" - "${HOST_MACHINE_SECURE_HOST_PORT}:443" links: - mysql volumes: - ${DOCUMENT_ROOT-./www}:/var/www/html - ${PHP_INI-./config/php/php.ini}:/usr/local/etc/php/php.ini - ${VHOSTS_DIR-./config/vhosts}:/etc/apache2/sites-enabled - ${LOG_DIR-./logs/apache2}:/var/log/apache2 mysql: build: ./bin/mysql container_name: '5.7-mysql' restart: 'always' ports: - "${HOST_MACHINE_MYSQL_PORT}:3306" volumes: - ${MYSQL_DATA_DIR-./data/mysql}:/var/lib/mysql - ${MYSQL_LOG_DIR-./logs/mysql}:/var/log/mysql environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} MYSQL_DATABASE: ${MYSQL_DATABASE} MYSQL_USER: ${MYSQL_USER} MYSQL_PASSWORD: ${MYSQL_PASSWORD} phpmyadmin: image: phpmyadmin/phpmyadmin container_name: 'sc-phpmyadmin' links: - mysql environment: PMA_HOST: mysql PMA_PORT: 3306 PMA_USER: ${MYSQL_USER} PMA_PASSWORD: ${MYSQL_PASSWORD} MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} MYSQL_USER: ${MYSQL_USER} MYSQL_PASSWORD: ${MYSQL_PASSWORD} ports: - '8080:80' volumes: - /sessions redis: container_name: 'sc-redis' image: redis:latest ports: - "${HOST_MACHINE_REDIS_PORT}:6379" yehuda@yehudakoLapHz ~/Projects/private/crm/docker-compose-lamp % ls .env .env yehuda@yehudakoLapHz ~/Projects/private/crm/docker-compose-lamp % cat .env DOCUMENT_ROOT=./www VHOSTS_DIR=./config/vhosts APACHE_LOG_DIR=./logs/apache2 PHP_INI=./config/php/php.ini MYSQL_DATA_DIR=./data/mysql MYSQL_LOG_DIR=./logs/mysql # If you already has the port 80 in use, you can change it (for example if you have Apache) HOST_MACHINE_UNSECURE_HOST_PORT=80 HOST_MACHINE_SECURE_HOST_PORT=443 # If you already has the port 3306 in use, you can change it (for example if you have MySQL) HOST_MACHINE_MYSQL_PORT=3306 # If you already has the port 6379 in use, you can change it (for example if you have Redis) HOST_MACHINE_REDIS_PORT=6379 # MySQL root user password MYSQL_ROOT_PASSWORD=tiger # Database settings: Username, password and database name MYSQL_USER=docker MYSQL_PASSWORD=docker MYSQL_DATABASE=docker