Acesso à Internet com proxy
Se estiver implantando em um ambiente que requer acesso à Internet por meio de um proxy, você desejará configurar os serviços para que eles possam acessar os recursos conforme pretendido.
A melhor maneira de fazer isso é definir um único arquivo com variáveis de ambiente necessárias em sua configuração do Butane e fazer referência a isso por meio de arquivos de unidade drop-in do systemd para todos esses serviços.
Definindo variáveis de ambiente de proxy comuns
This common file has to be subsequently referenced explicitly by each service that requires internet access.
variant: fcos
version: 1.5.0
storage:
files:
- path: /etc/example-proxy.env
mode: 0644
contents:
inline: |
https_proxy="http://example.com:8080"
all_proxy="http://example.com:8080"
http_proxy="http://example.com:8080"
HTTP_PROXY="http://example.com:8080"
HTTPS_PROXY="http://example.com:8080"
no_proxy="*.example.com,127.0.0.1,0.0.0.0,localhost"
Definindo unidades drop-in para serviços principais
Zincati pesquisa atualizações do sistema operacional e rpm-ostree é usado para aplicar atualizações do sistema operacional e de pacotes em camadas, exigindo, portanto acesso à internet. O serviço opcional anonimizado countme também requer acesso, se habilitado.
Você pode usar referências de arquivos locais para unidades do systemd em vez de fazer "inlining". Consulte Usando o parâmetro --files-dir do Butane para incorporar arquivos para obter mais informações.
|
variant: fcos
version: 1.5.0
systemd:
units:
- name: rpm-ostreed.service
dropins:
- name: 99-proxy.conf
contents: |
[Service]
EnvironmentFile=/etc/example-proxy.env
- name: zincati.service
dropins:
- name: 99-proxy.conf
contents: |
[Service]
EnvironmentFile=/etc/example-proxy.env
- name: rpm-ostree-countme.service
dropins:
- name: 99-proxy.conf
contents: |
[Service]
EnvironmentFile=/etc/example-proxy.env
Definindo unidades drop-in para daemons de contêiner
Se estiver usando o docker, o drop-in docker.service
é suficiente. Se estiver executando o Kubernetes com containerd (e sem docker), o drop-in containerd.service
pode ser necessário.
variant: fcos
version: 1.5.0
systemd:
units:
- name: docker.service
enabled: true
dropins:
- name: 99-proxy.conf
contents: |
[Service]
EnvironmentFile=/etc/example-proxy.env
- name: containerd.service
enabled: true
dropins:
- name: 99-proxy.conf
contents: |
[Service]
EnvironmentFile=/etc/example-proxy.env
Definindo o uso de proxy para unidades systemd do podman
O podman não possui daemon e, portanto, a configuração é para cada serviço individual agendado e pode ser feita como parte da definição completa da unidade do systemd.
variant: fcos
version: 1.5.0
systemd:
units:
- name: example-svc.service
enabled: true
contents: |
[Unit]
After=network-online.target
Wants=network-online.target
[Service]
EnvironmentFile=/etc/example-proxy.env
ExecStartPre=-/bin/podman kill example-svc
ExecStartPre=-/bin/podman rm example-svc
ExecStartPre=-/bin/podman pull example-image:latest
ExecStart=/bin/podman run --name example-svc example-image:latest
ExecStop=/bin/podman stop example-svc
[Install]
WantedBy=multi-user.target
Want to help? Learn how to contribute to Fedora Docs ›