Instalação Offline do Docker

Obtenção dos Binários

Para realizar a instalação offline do Docker, é necessário primeiro obter os binários apropriados para o seu sistema.

Opção A: Download do site oficial

https://download.docker.com/linux/static/stible/x86_64/

Opção B: Download alternativo

Link para download: [url=http://cdn.dimored.com/f/33339115-1421860553-b421e6?p=9840]docker-27.3.1.tgz[/url] (senha: 9840)


[root@servidor ~]# wget https://download.docker.com/linux/static/stable/x86_64/docker-27.3.1.tgz
--2024-11-05 21:00:03--  https://download.docker.com/linux/static/stable/x86_64/docker-27.3.1.tgz
Resolvendo download.docker.com (download.docker.com)... 3.163.218.12, 3.163.218.48, 3.163.218.52, ...
Conectando-se a download.docker.com (download.docker.com)|3.163.218.12|:443... conectado.
Solicitação HTTP enviada, aguardando resposta... 200 OK
Tamanho: 75324256 (72M) [application/x-tar]
Salvando em: 'docker-27.3.1.tgz'

docker-27.3.1.tgz                                100%[=======================================================================================================>]  71.83M  93.9MB/s    in 0.8s    

2024-11-05 21:00:04 (93.9 MB/s) - 'docker-27.3.1.tgz' salvo [75324256/75324256]

Extração e Instalação dos Binários


[root@servidor ~]# tar -xf docker-27.3.1.tgz 
[root@servidor ~]# mv docker/* /usr/bin/
[root@servidor ~]# rm -rf docker
[root@servidor ~]# rm -rf docker-27.3.1.tgz

Configuração do Diretório de Dados do Docker


[root@servidor ~]# mkdir /etc/docker

[root@servidor ~]# cat > /etc/docker/daemon.json<< EOF  
{  
 "log-driver":"json-file",  
 "log-opts": {"max-size":"500m", "max-file":"3"},  
 "insecure-registries": ["regharbor.demo.cn"],  
 "data-root": "/data/docker",  
 "bip": "172.30.35.1/24"  
}  
EOF

A seguir, uma configuração avançada para referência:


// Parâmetros de otimização de rede
{
    "log-driver": "json-file",
    "log-opts": {
        "max-size": "500m",
        "max-file": "3"
    },
    "insecure-registries": ["regharbor.gaiaworks.cn"],
    "data-root": "/data/docker",
    "bip": "172.30.35.1/24",
    
    // Otimizações de rede
    "mtu": 1500,
    "default-address-pools": [
        {
            "base": "172.30.0.0/16",
            "size": 24
        }
    ],
    "icc": false,
    
    // Configuração de DNS
    "dns": ["8.8.8.8", "8.8.4.4"],
    
    // Otimização de armazenamento
    "storage-driver": "overlay2",
    "storage-opts": ["overlay2.override_kernel_check=true"]
}

// Descrição dos parâmetros
Segurança de rede:
icc: false - Desativa a comunicação entre contêineres para aumentar a segurança
default-address-pools - Define o intervalo de endereços IP para novas redes
mtu - Define o tamanho máximo de unidade de transmissão para otimizar o desempenho de rede

Otimização de desempenho:
storage-driver: overlay2 - Utiliza um driver de armazenamento com melhor performance
dns - Configura servidores DNS confiáveis para aumentar a velocidade de resolução de nomes

// Observações importantes
As alterações na configuração só entram em vigor após o reinício do serviço Docker
Ao modificar o bip e parâmetros de rede, certifique-se de que:
Não há conflitos com redes existentes
Não há conflitos com a rede VPN
Há espaço suficiente de endereços IP

Em ambientes de produção, é recomendável habilitar a rotação de logs e limites de tamanho para evitar que os logs consumam excessivo espaço em disco

Criação do Arquivo de Inicialização Systemd


[root@servidor ~]# cat >>/etc/systemd/system/docker.service<<eof after="network-online.target" aplica="" autom="" command="" configurar="" cont="" container="" created="" de="" delegate="yes" description="Mecanismo" docker="" documentation="https://docs.docker.com" enable="" eof="" execreload="/bin/kill" execstart="ExecStart=/usr/bin/dockerd" firewalld.service="" hup="" id="" image="" inicializa="" iniciar="" killmode="process" limitcore="infinity" limitnofile="infinity" limitnproc="infinity" names="" o="" ports="" ps="" restart="on-failure" servi="" start="" startlimitburst="3" startlimitinterval="60s" status="" symlink="" systemctl="" timeoutstartsec="0" type="notify" wantedby="multi-user.target" wants="network-online.target">
</eof>

Tags: Docker Instalação contêineres sistema Linux

Publicado em 6-5 20:44 por Thomas