Sign inSign up

ileonardo/httpd

By ileonardo

Updated about 9 years ago

Servidor Web mais amplamente utilizado e é desenvolvido e mantido pela Apache Software Foundation.

Image
0

10K+

ileonardo/httpd repository overview

Apache Logo

Docker HTTPD/Source

Este container contém o source do Apache Web HTTPD e é compilado através do make && make install usando a base original do Desenvolvedor.


[TOC]

Requisitos

Foi utilizado a versão Release acessado pelo site Oficial do Apache no dia 12 de Outubro de 2016.

Notas:

Obs.:

  • Baseado no SO Debian/Ubuntu
  • LATEST (últimas atualizações de acordo com o acesso)
  • Comentado e adaptado ao LSB (Não testado o systemd)
Estrutura

SERVER ROOT

/:.
|
\---usr
 	|
 	\---local
 		|
 		\---apache2
 			|
 			+\	...

DOCUMENT ROOT

/:.
|
\---var
 	|
 	\---www
 		|
 		\---html
 			|
 			|	index.html

DEFAULT LAYOUT

Apache Config file 		:: 	/usr/local/apache2/conf/httpd.conf
Other Config files 		:: 	/usr/local/apache2/conf/extra/
SSL Config file 		:: 	/usr/local/apache2/conf/extra/httpd-ssl.conf
ErrorLog 				:: 	/var/log/httpd/error.log
AccessLog 				:: 	/var/log/httpd/access.log
cgi-bin 				:: 	/usr/local/apache2/cgi-bin
 							(enabled by default, but some of the bundled scripts are 644)
binaries (apachectl) 	:: 	/usr/local/apache2/bin/
start/stop 				:: 	/usr/local/apache2/bin/apachectl
 							(start|restart|graceful|graceful-stop|stop|configtest|-D FOREGROUND)

# PORTAS
80 						:: 	Apache Web default
443 					:: 	Apache Web SSL (Certificado Digital)

Obs.: Verifique o arquivo envvars, foi baseado nestas variaveis mas ainda não está automático, futuralmente estas variaveis estará junto com Apache Config file.


Comandos Básicos

Uso

Utilize:

Para construir a partir do Código Fonte:

docker build -t ileonardo/httpd .

Obs: O ponto final significa que o Dockerfile esta na pasta atual.

Ou se preferir baixar pelo Docker Hub:

docker pull ileonardo/httpd

Para Executar:

docker run -d -p 80:80 -p 443:443 ileonardo/httpd

Mas se preferir apontar o DOCUMENT ROOT no HOST do que usar do Container, utilize:

docker run -dit --name apache-app --publish=80:80 -v "/home/aluno/public":/var/www/html/ ileonardo/httpd

Ou usando $PWD (apontando local atual):

docker run -dit --name apache-app --publish=80:80 -v "$PWD":/var/www/html/ ileonardo/httpd

Entrar no Container em daemon:

docker exec -it <ID_Container> /bin/bash

Sair sem encerrar o Container:

[CTRL] p + q
Essenciais

Ver todas as Imagens no HOST:

docker images

Ver todos os Containers no HOST:

docker ps -a

Remover uma Imagem no HOST:

docker rmi <nome_imagem>

Remover um Container no HOST:

docker rm <Nome_Container>

Remover dangling images (Imagens sem TAG, quer dizer quando rodou o Dockerfile que falhou ele cria uma imagem )

docker rmi $(docker images -f "dangling=true" -q)

Remover o histórico dos comandos do Container no HOST:

docker stop $(docker ps -a -q) && docker rm $(docker ps -a -q)

Remover Todas às Imagens e Containers no HOST:

docker stop $(docker ps -a -q) && \
docker rm $(docker ps -a -q) && \
docker rmi $(docker images -q)
Manipulação de Dados

Copiar um arquivo do Container para o HOST:

# Unix
docker cp <ID_Container>:/caminho/no/container/arquivo /caminho/no/host

# Windows
docker cp <ID_Container>:/caminho/no/container/arquivo c:\caminho\no\host

Copiar um arquivo do HOST para o Container:

# Unix
docker cp /caminho/no/host/arquivo <ID_Container>:/caminho/no/container

# Windows
docker cp c:\caminho\no\host\arquivo <ID_Container>:/caminho/no/container

Obter informações do container (PATH, STATUS, IP):

docker inspect <ID_Container>

Docker Toolbox:

docker-machine ls
Monitoramento de Containers

Para ver as estatísticas de um Container específico no HOST:

docker stats <Nome_container>

Para ver as estatísticas de todos Containers no HOST:

docker stats `docker ps | tail -n+2 | awk '{ print $NF }'`

Direitos autorais e Licença

Este trabalho não foi modificado de seus Criadores (Link's de consulta abaixo), foi adaptado de acordo com a documentação do mesmo e dando os créditos contida neste repositório, a busca e a organização para futuras atualizações deve ser dado ao contributors.txt (BY).

Este trabalho foi escrito por Leonardo Cavalcante Carvalho e está licenciado com uma Licença Apache-2.0.

Tag summary

Content type

Image

Digest

Size

151.4 MB

Last updated

about 9 years ago

docker pull ileonardo/httpd