AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / user-437756

Sam Tyurenkov's questions

Martin Hope
Sam Tyurenkov
Asked: 2024-07-12 14:56:06 +0800 CST

O mapeamento de domínio e porta não funciona no Google Compute Engine com Docker e Nginx

  • 5

Em primeiro lugar, quero ressaltar que estou implantando meu aplicativo de uma forma não recomendada.
O Google sugeriu a implantação de um único contêiner por meio da GUI: https://cloud.google.com/compute/docs/containers/deploying-containers

No entanto, estou fazendo isso de uma maneira diferente: eu puxo meu projeto e, em seguida, inicio-o com docker-compose e habilito 7 contêineres com nginx, php, postfix, redis, db e algumas outras coisas.

janela de encaixe ps

O firewall da instância de VM permite http e https. E posso me conectar ao IP do host via http. No entanto, parece que não passa corretamente o domínio para o nginx e não consigo me conectar via nome de domínio.

O DNS é adicionado corretamente e o nome de domínio aponta para minha VM, mas depois disso ele entra no tempo limite.

parte do meu docker-compose.yml:

  nginx-custom:
    depends_on:
      - db
      - php-fpm-custom
      - phpmyadmin
    image: nginx-custom:latest
    container_name: nginx-custom
    links:
      - phpmyadmin:phpmyadmin
    build:
      context: ./docker/nginx/
      args:
        USER_ID: ${USER_ID}
        GROUP_ID: ${GROUP_ID}
        SITE_DOMAIN: ${SITE_DOMAIN}
        DB_HOST: ${DB_HOST}
        DB_ADMIN_WEBPATH: ${DB_ADMIN_WEBPATH}
    restart: always
    volumes:
      - ./ssl:/etc/nginx/ssl
      - .:/var/www/site
    extra_hosts:
      - "host.docker.internal:host-gateway"
    ports:
      - 80:80
      - 443:443
    expose:
      - '80'
      - '443'
    networks:
      - app-network

E default.conf para nginx:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    location / {
        return 403;
    }
}

server {
    listen 80;
    listen [::]:80;

    server_name <SITE_DOMAIN added here via sed>;

    root /var/www/site/web;
    index index.php;

    location / {
            try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass php-fpm-custom:9000;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_index index.php;
        fastcgi_buffer_size 128k;
        fastcgi_buffers 4 256k;
        fastcgi_busy_buffers_size 256k;
    }
}

O que me confunde nos documentos:

Você não pode mapear as portas de uma instância de VM para as portas do contêiner (opção -p do Docker). Para permitir o acesso aos seus contêineres, consulte Publicação de portas de contêiner.

Acho que esse é o motivo, mas não tenho certeza de como consertar, considerando que estou implantando com o docker-compose. Porque o projeto local funciona bem e posso mapear um site.test na minha máquina local.

nginx
  • 2 respostas
  • 76 Views
Martin Hope
Sam Tyurenkov
Asked: 2017-09-30 16:04:58 +0800 CST

Quantos usuários meu servidor pode receber? [duplicado]

  • 0
Essa pergunta já tem respostas aqui :
Você pode me ajudar com meu planejamento de capacidade? (3 respostas)
Fechado há 4 anos .

Foi-me dito para mudar para nginx ou pelo menos para mpm_worker. Mas realmente, como posso estimar se meu servidor não está realmente sobrecarregado mesmo com mpm_prefork?

Meu sistema é:

  1. GCP 1 CPU + 3,75 GB
  2. Debian 8
  3. Apache 2.4 com mpm_prefork
  4. Cache de verniz, Memcache

Algumas configurações do php.ini

max_execution_time = 30
max_input_time = 60
memory_limit = 1536M

Alguns outros vários módulos padrão do apache, sem fastcgi e sem php-fpm.

<IfModule mpm_prefork_module>
    StartServers             5
    MinSpareServers       5
    MaxSpareServers      10
    MaxRequestWorkers     250
    MaxConnectionsPerChild   0
</IfModule>

KeepAlive Off

E eu tenho cerca de 20 pequenos blogs wordpress nele.

Então, quantos usuários simultâneos posso reunir em todos os sites? Não preciso de números exatos. Eu quero entender se é 10s 100s ou 1000s? Provavelmente não 10000s. Mas se for algo como 250 on-line ao mesmo tempo - acho que ainda é bom por enquanto.

Além disso, devo definir o limite de memória para 3 GB? OU deixar os 2GB restantes para serem usados ​​pelo verniz é uma boa ideia?

Completed 1000 requests
Finished 1000 requests
Server Software:        Apache/2.4.10
Server Hostname:        sochi.asp.sale
Server Port:            443
SSL/TLS Protocol:       TLSv1.2,ECDHE-RSA-AES256-GCM-SHA384,2048,256
Document Path:          /
Document Length:        199165 bytes
Concurrency Level:      100
Time taken for tests:   12.041 seconds
Complete requests:      1000
Failed requests:        0
Total transferred:      199546499 bytes
HTML transferred:       199165000 bytes
Requests per second:    83.05 [#/sec] (mean)
Time per request:       1204.067 [ms] (mean)
Time per request:       12.041 [ms] (mean, across all concurrent requests)
Transfer rate:          16184.28 [Kbytes/sec] received
Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:       12  711 1471.9    307    6868
Processing:    23  492 960.2    253    7588
Waiting:        2  302 957.0     76    7043
Total:         35 1203 2005.6    524    7629
Percentage of the requests served within a certain time (ms)
  50%    524
  66%    534
  75%    608
  80%    644
  90%   7164
  95%   7186
  98%   7188
  99%   7189
 100%   7629 (longest request)
apache-2.4
  • 2 respostas
  • 339 Views

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve