Docker proxy kimlik bilgileri: URL kodlaması ve systemd yüzde kaçışları
Proxy kimlik bilgilerinin bileşenlerini yüzdeyle kodlayın, ardından bu yüzde işaretlerini bir systemd Environment ataması boyunca koruyun.
Alan adı tarzındaki bir proxy kullanıcı adı ters eğik çizgi içerebilir ve parola, URI sözdiziminin ayırdığı karakterleri içerebilir. Proxy URL'sini oluştururken bu kimlik bilgisi bileşenlerini kodlayın: örneğin ters eğik çizgi %5C olur.
Bir systemd hizmetindeki Environment ataması bir ayrıştırıcı daha ekler. Birim yapılandırmasındaki düz yüzde işaretlerinin iki katına çıkarılması gerekir:
[Service]
Environment="HTTPS_PROXY=http://DOMAIN%%5Cproxy-user:example%%[email protected]:8080"
Örnek değerler bir alan adı kullanıcı adını ve # içeren bir parolayı temsil eder. systemd %% işaretini % yapar ve kodlanmış URL'yi arka plan hizmetine bırakır. Hedef şema da bu yolu gerektiriyorsa ilgili HTTP_PROXY atamasını ekleyin.
Çift yüzde, systemd sözdizimidir. Docker'ın daemon.json dosyasındaki proxy değeri ise bunun yerine %5C ve %23 gibi olağan URI kaçışlarını içerir. Birim dosyasının yazımını değiştirmeden JSON'a veya bir istemcinin proxy URL alanına kopyalamayın.
Yapılandırılmış kaynağı da gözden uzak tutmayın. Docker, arka plan hizmetinin proxy yapılandırmasının proxy ortam değişkenlerine göre öncelikli olduğunu belgeler; bu nedenle daha eski bir JSON değeri düzeltilmiş bir hizmet ortamını gizleyebilir.