Dockerfile
2.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
############################################################
# Dockerfile de construção do container do MySQL
# utilizado pelo SEI e pelo SIP
#
# Baseado no CentOS 6.X
############################################################
# Define a imagem de base para o CentOS 6.X
FROM centos:centos6
# Autor e mantenedor do container
MAINTAINER MPOG\Guilherme Andrade Del Cantoni
# Atualiza o source list do repositório
RUN yum -y update && yum -y upgrade
# Copia arquivos necessários para a instalação
ADD SEI-BD-MySQL-v2.5.1.zip /tmp/SEI-BD-MySQL-v2.5.1.zip
################## INICIO DA INSTALACAO ######################
# Instalação do MySQL seguindo as recomendações descritas na documentação do SEI
# Ref: http://<WIKI DO PROJETO>#<SESSAO DE INSTALAÇÃO DO MYSQL>
# Instala o pacote do MySQL Server 5.X
RUN yum install -y mysql-server-5.* unzip
# Configura estrutura inicial do banco de dados
RUN mysql_install_db
# Cria banco de dados e usuários da aplicação
RUN service mysqld start && \
mysqladmin create sip && \
mysql -e "CREATE USER 'sip_user'@'%' IDENTIFIED BY '123456'" sip && \
mysql -e "GRANT ALL PRIVILEGES ON sip.* TO 'sip_user'@'%'" sip && \
mysqladmin create sei && \
mysql -e "CREATE USER 'sei_user'@'%' IDENTIFIED BY '123456'" sei && \
mysql -e "GRANT ALL PRIVILEGES ON sei.* TO 'sei_user'@'%'" sei
# Restaura banco de dados da aplicação
RUN service mysqld start && \
cd /tmp && unzip SEI-BD-MySQL-v2.5.1.zip && \
mysql sei < sei_2_5_1.sql && \
mysql sip < sip_2_5_1.sql && \
rm sei_2_5_1.sql sip_2_5_1.sql SEI-BD-MySQL-v2.5.1.zip
# Remove registros de auditoria presentes na base de referência
RUN service mysqld start && \
mysql -e "delete from auditoria_protocolo;" sei
# Atualiza parâmetros do SEI e do SIP no banco de dados
RUN service mysqld start && \
mysql -e "update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0;" sip && \
mysql -e "update sistema set pagina_inicial='http://localhost/sip' where sigla='SIP';" sip && \
mysql -e "update sistema set pagina_inicial='http://localhost/sei/inicializar.php', web_service='http://localhost/sei/controlador_ws.php?servico=sip' where sigla='SEI';" sip && \
mysql -e "update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0;" sei
# Altera configurações padrões do MySQL
RUN service mysqld start && \
mysql -e "drop user ''@'localhost'" && \
mysql -e "drop user ''@$HOSTNAME" && \
mysql -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'" && \
mysqladmin -u root password '123456'
##################### FIM DA INSTALACAO #####################
# Expõe a porta padrão do MySQL Server
EXPOSE 3306
# Default port to execute the entrypoint (MongoDB)
CMD ["/usr/bin/mysqld_safe", "--bind-address=0.0.0.0"]
# Atribui o comando padrão do container
# ENTRYPOINT /usr/bin/mysqld_safe