Herramientas de usuario

Herramientas del sitio


wiki2:docker-examples

¡Esta es una revisión vieja del documento!


Docker Notes

docker-compose examples

version: '2'
services:
  mysql:
    image: mysql
    restart: always
    ports:
    - "3306:3306"
    volumes:
    - /home/alfred/tmp/data:/data/db
    environment:
    - MYSQL_ROOT_PASSWORD=the_pass
  php:
    image: my-php
    restart: always
    ports:
    - "8000:80"
    volumes:
    - /home/alfred/php/:/var/www/html
    links:
    - mysql
version: '2'
services:
  mysql:
    image: mysql
    restart: always
    ports:
    - "3306:3306"
    volumes:
    - /home/alfred/tmp/data:/data/db
    environment:
    - MYSQL_ROOT_PASSWORD=the_pass
    networks:
    - mynetwork2
  php:
    image: my-php
    restart: always
    ports:
    - "8000:80"
    volumes:
    - /home/alfred/php/:/var/www/html
    networks:
    - mynetwork2
networks:
  mynetwork2:
    driver: bridge
version: '2'
services:
  mysql:
    image: mysql
    restart: always
    ports:
    - "3306:3306"
    volumes:
    - /home/alfred/tmp/data:/data/db
    environment:
    - MYSQL_ROOT_PASSWORD=the_pass
    networks:
      mynetwork2:
        ipv4_address: 10.5.0.5
  php:
    image: my-php
    restart: always
    ports:
    - "8000:80"
    volumes:
    - /home/alfred/php/:/var/www/html
    networks:
      mynetwork2:
        ipv4_address: 10.5.0.6
networks:
  mynetwork2:
    driver: bridge
    ipam:
     config:
       - subnet: 10.5.0.0/16
         gateway: 10.5.0.1

Linux Alpine use

One of the most used Linux distro with Docker is Alpine. There are several reasons:

  • It is smaller (30x less than Debian. Debian 123mb, Ubuntu 118mb, Alpine 4mb)
  • So it is fast to download.
  • So, not having so many libraries already installed, secure (exploit proof).

Alpine package names are here.

Alpine uses apk instead of apt-get. Comparison with apt-get:

apt-get update apk update
apt-get install <packages> apk add <packages>

Trabajar con proxy

Definir un proxy para las descargas

Para ello debemos editar el fichero /etc/systemd/system/docker.service.d/<cualquier-nombre>.conf. Con el contenido:

[Service]
Environment="HTTP_PROXY=http://proxy.ejemplo:666/"

Luego para reiniciar docker y que pille el proxy:

$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

Definir un proxy en el build

Por ejemplo, si vamos a usar apt con quien podemos definir una variable de entorno http_proxy (para ello se usa el argumento build-arg) haremos:

docker build --build-arg http_proxy=http://192.168.40.110:3128 .
wiki2/docker-examples.1544786469.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)