Taula de continguts

Sesión 2: Docker

info

sudo & services

datos

Parallel changes

docker

imágenes

capas

VOLUME

NETWORK

varios

DOCKER-COMPOSE

docker-compose.yml
version: '3.3'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8000:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
       WORDPRESS_DB_NAME: wordpress
volumes:
    db_data: {}

/via: https://docs.docker.com/compose/wordpress/

DOCKER-SWARM

recortes

continous deployment

laboratorio

fracaso
FROM debian:7-slim 

ARG WP_FILE=latest.tar.gz

WORKDIR /tmp
#ADD https://wordpress.org/${WP_FILE} .

RUN apt-get -y update
RUN apt-get install -y apache2 wget php7.0
RUN wget --no-check-certificate https://wordpress.org/${WP_FILE}
RUN tar xf ${WP_FILE}
#RUN mkdir -p /var/www/html
RUN mv wordpress/* /var/www
RUN rm ${WP_FILE}
RUN apt-get clean

#    apt-get install -y apache2 libapache2-mod-php7.0 php-mysql php-gd php-redis && \

EXPOSE 80

ENTRYPOINT ["/usr/sbin/apache2ctl", "-DFOREGROUND"]

deberes

funciona por separado, pero no junto

docker-compose.yml
version: '3.3'

services:
  db:
    image: mysql:5.7
    volumes:
      - db_data:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: toor 
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress 

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    ports:
      - "8080:80"
    restart: always
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress

volumes:
  db_data:
    driver: local
    driver_opts:
      type: 'none'
      o: 'bind'
      device: '${HOME}/Docker/_storage/mysql/wordpress'