Producción usando Docker¶
Recursos a usar:¶
Docker
Gunicorn
Nginx
Redis
Carpetas (para mantener el orden)¶
Para guardar las aplicaciones: apps, docker_apps o workspace
Para guardar los backups o elementos compartidos: docker_shared o docker
Para la Base de Datos¶
'NAME': 'radarsys',
'USER': 'developer',
'PASSWORD': ''
Pasos para la creación del Docker de la Base de Datos¶
Creación del Docker:
user@igp$: docker create -v /var/lib/mysql --name mysql-radarsys-data mysql:5.6 /bin/true
Ejecución del Docker:
user@igp$: docker run --name mysql-radarsys-server -d -e MYSQL_ROOT_PASSWORD=xxxx -e MYSQL_DATABASE=radarsys \ -e MYSQL_USER=developer -e MYSQL_PASSWORD=xxxx --volumes-from mysql-radarsys-data mysql:5.6
NOTA: Para cargar data al sevidor de mysql:¶
user@igp$: docker exec -i mysql-radarsys-server mysql -udeveloper -p<password> radarsys < /home/soporte/docker_shared/bk_db_2017MD_HORA.sqlNOTA: Para confirmar ejecución del docker:¶
user@igp$: docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES bf3582f5a653 mysql:5.6 "docker-entrypoint..." 3 weeks ago Up 2 seconds 3306/tcp mysql-radarsys-server
Para la Aplicación SIR¶
Pasos para la creación del Docker para el Sistema Integrado de Radar:¶
Descargar la aplicación:
user@igp$: cd apps user@igp$: svn checkout --username=<username> http://jro-dev.igp.gob.pe/svn/jro_hard/radarsys/trunk/webapp/ radarsys
Asegurarse de la existencia del archivo Dockerfile o crearlo:
FROM python:2.7.11 # set working directory RUN mkdir /radarsys WORKDIR /radarsys # Copy the main application. COPY . ./ # Install python dependences RUN pip install -v --timeout 120 -r requirements.txt --no-cache-dir EXPOSE 3000 # CMD ["python", "manage.py", "runserver", "0.0.0.0:3000"] # Para produccion: CMD ["gunicorn", "radarsys.wsgi:application", "--bind", "0.0.0.0:3000"]
Crear la imagen del Container o Docker:
user@igp$: cd apps/radarsys user@igp$: docker build -t radarsys:v01 .
Ejecutar Container:
user@igp$: docker run -d --name radarsys01 --link mysql-radarsys-server -p 3000:3000 \ -v /home/ubuntu/docker_shared/radarsys/media:/radarsys/media \ --add-host smtp_server:172.17.0.1 radarsys:v01