- nc -v -w 1 172.16.4.221 -z 10-90
- nmap localhost
Mes: febrero 2018
Docker – apache php7 y postgresql
Mediante dos contenedores levantar un servidor apache configurado con Php7 y un contenedor para postgresql con persistencia mediante un volumen de datos:
Preparar la imagen con apache y php7
Estructura del directorio
Crear el archivo Dockerfile
FROM webdevops/php-apache:alpine RUN apk update && apk add build-base RUN apk add php7-pdo_pgsql
A partir de una imagen de «webdevops/php-apache:alpine», procedemos a actualizar los paquetes (2) y añadir compatibilidad con php7 (3)
Crear la imagen
docker build -t apache7php .
Crear docker-compose.yml
version: '3' services: db: image: postgres:latest ports: - "5432:5432" networks: - overlay environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: 123456 volumes: - ./sql:/sql - postgres-data:/var/lib/postgresql/data web: image: apache7php:latest ports: - "80:80" volumes: - ../intranet:/app - ./php/02_pdo_pgsql.ini:/etc/php7/conf.d/02_pdo_pgsql.ini - ./http/vhost.conf:/opt/docker/etc/httpd/vhost.conf links: - db networks: - overlay volumes: postgres-data: networks: overlay:
(1) versión de composer
(2) Area de servicios
(3) Etiqueta para contenedor de bdd
(4) Imagen de referencia
(5) puertos
(7) Es necesario establecer una red (característica de la versión 3)
(8) Variable de ambiente
(12) Volumenes que comparte
(13) Carpeta «sql» para compartir respaldos de las bdd
(14) volumen para persistencia de las bdd
(16) Etiqueta para contenedor de servidor web
(17) Referencia a imagen recién creada
(18) Puertos
(20) Volumenes
(21) Carpeta que sera publicada en el sevidor
(22) Archivo de configuración que habilita pdo_pgsql
(23) Archivo de configuración para servidores virtuales
(24) Referencia a contenedor de bdd
(26) Referencia a red
(29) Area de volumenes
(30) Volumen para persistencia de bases de datos
(32) Area para redes
Archivos de configuración
02_pdo_pgsql.ini
extension=pdo_pgsql.so
vhost.conf
####################################### # Vhost ####################################### <VirtualHost *:80> ServerName docker.vm ServerAlias *.vm DocumentRoot "/app/public" UseCanonicalName Off <IfVersion < 2.4> Include /opt/docker/etc/httpd/vhost.common.d/*.conf </IfVersion> <IfVersion >= 2.4> IncludeOptional /opt/docker/etc/httpd/vhost.common.d/*.conf </IfVersion> </VirtualHost> <VirtualHost *:443> ServerName docker.vm ServerAlias *.vm DocumentRoot "/app" UseCanonicalName Off <IfVersion < 2.4> Include /opt/docker/etc/httpd/vhost.common.d/*.conf </IfVersion> <IfVersion >= 2.4> IncludeOptional /opt/docker/etc/httpd/vhost.common.d/*.conf </IfVersion> Include /opt/docker/etc/httpd/vhost.ssl.conf </VirtualHost>
Ejecutar
$ docker-compose up
Editar JAVA_HOME
Error
./wso2server.sh
Error: JAVA_HOME is not defined correctly.
CARBON cannot execute java
Configuración
Editar /etc/profile
sudo vim /etc/profile
Incluir al final del archivo
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin/
Asegurarse del nombre java-8-openjdk-amd64 para linuxmint, java-8-openjdk para manjaro
Actualizar variable
$ source /etc/profile
no funciona con fish por lo que hay que cambiarse a bash