docker instalado php, nginx, Redis, mysql e ligação até o recipiente

As pessoas têm a coragem de dizer que eles são originais, eu também serviu, poços e mais, temos modificado

Eu construí a php7

 

docker 安装php,nginx,redis,mysql容器并且link起来

    docker pull mysql
    docker pull nginx
    docker pull redis
    docker pull php:7.0-fpm


    需要制定版本的可以像php那样加版本号,没加的就是最新的


Ambiente de funcionamento
MacBook Pro, OSX 10.13.6

início php-fpm
interpretado php necessidade php-fpm, deixá-lo instalado e funcionando:

docker run --name php7 -d  -v  /home/www:/www/wwwroot php:7.0-fpm

解释执行 php 需要 php-fpm,先让它运行起来:

说明:
php7 是容器的名字

~/home/lnmp/www  宿主机目录

/www/wwwroot     目录名字


 

启动mysql
 docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.6

加版本,如果上面没有的话又会下载一遍

docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql

所以最好不要加版本

nome do recipiente -nome

nome personalizado mysql

-p: porta de exposição, o mapeamento da porta (mapeamento pode ser várias portas) portas externas: no interior da porta do contentor

-p 3306: mapeamento da porta 3306

-E: definir quaisquer variáveis ​​do ambiente (o vaso)

MYSQL_ROOT_PASSWORD = root aqui refere-se a definir a senha de banco de dados para a raiz

Redis início

docker run --name redis -p 6379:6379 -d redis

Redis nome personalizado 
-p 6379: 6379 mapeamento de portas, ou seja, portas externas: um porto de contentores 
Redis: Últimas nome da imagem: Versão

dentro nginx, php-fpm, mysql, Redis ligação recipiente

docker run --name nginx --link mysql:db --link redis:redis --link php7:php -p 80:80 -v /home/www:/www/wwwroot -d nginx

Edite o arquivo de configuração nginx

O navio cp janela de encaixe conf.d em um arquivo de configuração para o local, default.conf 
janela de encaixe cp nginx: /etc/nginx/conf.d/default.conf default.conf 

server {
    listen       80;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /www/wwwroot;
        index  index.php index.html index.htm;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        root          /www/wwwroot;
        fastcgi_pass   172.17.0.2:9000; #php-fpm容器的ip,端口9000
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /www/wwwroot/$fastcgi_script_name;
        include        fastcgi_params;

    }

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}

查看容器ip 的方法

docker inspect --format '{{ .NetworkSettings.IPAddress }}' <container-ID> 
或 
docker inspect <container id> 
或 
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name_or_id!

 

Modificar a cópia pode voltar estivador cp default.conf nginx: /etc/nginx/conf.d/default.conf
Estes são meu perfil
lançamento recipiente
janela de encaixe começar nginx
fechado recipiente
parada estivador nginx
reiniciar o recipiente
janela de encaixe restart nginx
recipiente de exclusão
estivador rm nginx
no recipiente
janela de encaixe exec -é nginx / bin / bash
recipiente estado
janela de encaixe estado nginx
espelho retrovisor
Docker ImagesRF Royalty Free
recipiente Docker para ver correr
janela de encaixe ps
visualizar todos os recipientes
janela de encaixe ps -a
remover o espelho
janela de encaixe rmi nginx
exportação exportação
1. primeiro verificar todos os recipientes
sudo ps docker -a
2. encontre recipiente ID de contêiner de exportação, e em seguida, executar o comando
sudo recipiente janela de encaixe exportação recipiente ID> export nome do arquivo endereço
que é
exportação janela de encaixe sudo 234wer2323dfdfdsfq> /home/export.tar
Import Import
/home/export.tar CAT | sudo Docker Import - lanmps: Últimas
salvar Salvar
o comando Salvar para a imagem persistente (não o recipiente)
1. O primeiro verificar todos os espelhos
sudo imagens docker

2. Encontre a imagem que deseja salvar o nome do
sudo janela de encaixe save nome da imagem> para salvar o endereço do nome do arquivo
que é
sudo janela de encaixe salvar lanmps> /home/save-lanmps.tar
carregado
de carga janela de encaixe </home/save-lanmps.tar
última visita localhost: 8888 no pode mostrar acesso ao diretório
usando Redis
Para usá-lo você deve instalar Redis Redis recipiente em extensão php
Redis prolongado conexão de download 
phpize 
./configure 
make instalar o make && 
esta instalação compilador tempo, e depois gera uma extensão redis.so deste tempo para pedir seu perfil onde está? 
Sua /usr/local/etc/php/conf.d perfil jogado diretamente abaixo

redis.ini nome do arquivo
de extensão = / usr / local / lib / php / extensões /-no-depuração não-ZTS-20170718 / redis.so
restart recipiente php-fpm
Docker o reinício php72
localhost: 8888 / index.php
echo o phpinfo () ;

Encontrar extensão Redis foi instalado
para as seções de gravação do código-lo

o Redis Redis novo new = $ ();
$ redis-> Connect ( '172.17.0.5', 6379); // navio IP
// print_r ($ Redis); Die;
$ = strName 'Push';
$ Re = $ redis- > publicar ($ strName "a partir de pequenas séries para escrever seu próprio {$ strName} empurrão!");
echo "{$ strName} ---- ----- empurrão bem sucedido /> <br";
$ redis-> privacidade close ();
MySQL usar
o try {
    $ DB = new new PDO ( 'MySQL: host = 172.17.0.4; dbname = Test', 'raiz', 'raiz');
    $ ARR = $ db-> query ( "SELECT * FROM user ") -> fetch ();
    var_dump ($ ARR); Die;
} o catch (PDOException $ E) {
    Imprimir" Erro: a "" $ E-> a getMessage () .. "
    Die ();
}
Original: https: //blog.csdn. net / qq_36373262 / article / details / 79727223
próprio pro-teste, parte do poço foi preenchido

Publicado 29 artigos originais · ganhou elogios 5 · Vistas 8003

Acho que você gosta

Origin blog.csdn.net/qq_25194685/article/details/89742199
Recomendado
Clasificación