O contêiner do Docker implanta Wordpress apenas para fins de teste

Aplicativo em contêiner Docker:
* Implantar ambiente docker
Nota: É
recomendado usar a versão Centos7-1810. Na versão 1511, haverá problemas de driver e iptables
. 1. Primeiro configure o arquivo yum de rede: Caso contrário, consulte este documento https: // blog .csdn.net / smileui / article / details / 106738039

yum clean all; yum makecache  

2. Instale o ambiente docker:

yum install -y yum-utils device-mapper-persistent-data lvm2 
yum-config-manager  --add-repo https://download.docker.com/linux/centos/docker-ce.repo 
yum install docker-ce docker-ce-cli containerd.io -y  
systemctl start docker   
systemctl enable docker   

3 ... Configure o endereço do armazém doméstico: realize implantação rápida de espelhamento

sudo mkdir -p /etc/docker 
sudo tee /etc/docker/daemon.json <<-'EOF'
{
    
    
  "registry-mirrors": ["https://2n9uoybw.mirror.aliyuncs.com"]
}
EOF

4. Reinicie o serviço

systemctl daemon-reload   && systemctl restart docker  

Prepare os arquivos de imagem necessários para implantar o wordpress wordpress
é um sistema de blog desenvolvido com base em PHP + MySQL. Se você deseja executá-lo, é necessário usar LAMP ou LNMP wordpress: mais recente. Por padrão, AP ou NP
mysql: 5.7 está incluído. Instale o banco de dados MySQL. Recomenda-se usar a versão 5.6 ou 5.7.

[root @ localhost ~] # docker pull wordpress: mais recente
[root @ localhost ~] # docker pull mysql: 5.7

1. Prepare a ferramenta docker-compose
para orquestrar a próxima inicialização do contêiner (semelhante ao plano de trabalho na vida diária)
LAMP Primeiro inicie o mysql, depois inicie o Apache para
implantar o aplicativo wordpress, você deve iniciar o contêiner mysql primeiro e, em seguida, iniciar o wordpress

[root@localhost ~]# docker images 
REPOSITORY TAG IMAGE ID CREATED SIZE 
wordpress latest ee025cbcbc20 3 days ago 539MB 
mysql 5.7 1e4405fe1ea9 2 weeks ago 437MB 
centos latest 0f3e07c0138f 2 months ago 220MB 

2. Prepare a fonte epel YUM

[root@localhost ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel- 
7.repo 
[root@localhost ~]# ls /etc/yum.repos.d/ 
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo epel.repo 
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo docker-ce.repo 

Prepare a ferramenta pip para gerenciamento de lote de kits de ferramentas desenvolvidos em linguagem python (a diferença do binário GitHub está principalmente na versão)

[root@localhost ~]# yum -y install python2-pip 

Devido às dependências de instalação, é recomendado instalar todos os pacotes a seguir antes de instalar docker-compose

[root@localhost ~]# yum -y install gcc libffi-devel python-devel openssl-devel openldap-devel 

Três, atualize a versão do pip

[root@localhost ~]# pip install --upgrade pip 

Quarto, mude as fontes domésticas

[root@localhost ~]# pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pandas 
[root@localhost ~]# pip install python-ldap --user -U 
[root@localhost ~]# pip install six --user -U 
[root@localhost ~]# pip install pyudev --user -U 
[root@localhost ~]# pip install dnspython --user -U 
[root@localhost ~]# pip install cffi --user -U 

Cinco, instale docker-compose

[root@localhost ~]# pip install docker-compose --ignore-installed requests

Seis, verifique se a instalação foi bem-sucedida

[root@localhost ~]# docker-compose version 
docker-compose version 1.25.0, build b42d419 
docker-py version: 4.1.0 
CPython version: 2.7.5 
OpenSSL version: OpenSSL 1.0.2k-fips 26 Jan 2017 

Sete, prepare o arquivo de imagem do contêiner

[root@localhost ~]# docker images 
REPOSITORY TAG IMAGE ID CREATED SIZE 
wordpress latest ee025cbcbc20 3 days ago 539MB 
mysql 5.7 1e4405fe1ea9 2 weeks ago 437MB 

Oito, crie um arquivo de catálogo

[root@localhost ~]# mkdir wordpressproject 
[root@localhost ~]# cd wordpressproject/

Nove, escreva o arquivo docker-compose.yaml:
preste atenção ao formato do arquivo, preste atenção aos espaços estritamente

[root@localhost wordpressproject]# cat docker-compose.yaml 

```powershell
version: '3'
services: 
  db: 
    image: mysql:5.7
    volumes:
    - "./data:/var/lib/mysql"
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: wordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
    expose: 
    - 3306
  wordpress: 
    depends_on:
     - db 
    image: wordpress:latest
    links:
     - db 
    ports:
     - "8080:80"
    restart: always
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_PASSWORD: wordpress

O código acima é muito importante, especialmente o problema de indentação deve ser tratado corretamente.
Dez, ligue a função de encaminhamento de ip (muito importante)

[root@localhost wordpressproject]# vi /etc/sysctl.conf 
[root@localhost wordpressproject]# net.ipv4.ip_forward = 1 
[root@localhost wordpressproject]# sysctl -p   

11.
Faça efeito imediatamente. Esta parte é um comando de ajuda. Abaixo está o comando de inicialização específico relacionado aos comandos docker-compose:
como usar docker-compose

[root@localhost wordpressproject]# docker-compose --help 
[root@localhost wordpressproject]# docker-compose up 

Este comando só pode ser usado no diretório do projeto para iniciar o projeto

[root@localhost wordpressproject]# docker-compose down 

Pare e exclua os contêineres que o projeto criou.
12. Inicie o docker-compse:

[root@localhost wordpressproject]# docker-compose up -d 
Creating network "wordpressproject_default" with the default driver 
Creating wordpressproject_db_1 ... done 
Creating wordpressproject_wordpress_1 ... done 
[root@localhost ~]# docker ps 
CONTAINER ID IMAGE COMMAND CREATED STATUS 
PORTS NAMES 
4cf5f4cee330 wordpress:latest "docker-entrypoint.s…" About a minute ago Up About a 
minute 0.0.0.0:8080->80/tcp wordpressproject_wordpress_1 
4d9cb6aee451 mysql:5.7 "docker-entrypoint.s…" About a minute ago Up About a 
minute 3306/tcp, 33060/tcp wordpressproject_db_1 
[root@localhost ~]# ls 
anaconda-ks.cfg mysql.tar wordpressproject wordpress.tar 
[root@localhost ~]# cd wordpressproject/ 
[root@localhost wordpressproject]# ls 
data docker-compose.yaml 
[root@localhost wordpressproject]# ls data 
auto.cnf client-key.pem ib_logfile1 private_key.pem sys 
ca-key.pem ib_buffer_pool ibtmp1 public_key.pem wordpress 
ca.pem ibdata1 mysql server-cert.pem 
client-cert.pem ib_logfile0 performance_schema server-key.pem 
[root@localhost wordpressproject]# ls data/wordpress/ 
db.opt

Treze, os resultados finais do teste omitem as capturas de tela do banco de dados de nomes de usuário de configuração que aparecem no meio
Insira a descrição da imagem aqui

Acho que você gosta

Origin blog.csdn.net/smileui/article/details/108556877
Recomendado
Clasificación