Ekspos soket Unix ke sistem host dari dalam dari wadah Docker

Saya ingin menjalankan aweb server di dalam wadah Docker yang mendengarkan soket Unix, bukan ke port. Saya menemukan banyak hasil dalam berbagi soket buruh pelabuhan, tetapi menurut saya bukan itu yang saya inginkan.

Saya ingin sistem host dapat terhubung ke soket Unix yang sedang didengarkan di dalam wadah.

Saya menggunakan docker-compose, jadi cara biasa menggunakan -v tidak bekerja.

Konfigurasi situs ngix saya:

server {                                                                                                listen 80; listen [::]:80;                                                                server_name foo.com www.foo.com;    location / {                                                                                 proxy_pass http://unix:/var/lib/docker/volumes/app_shared/_data/app.https.sock:;               proxy_set_header Host $http_host;                                                                    proxy_http_version 1.1;                                                                              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;                                         proxy_set_header X-Forwarded-Proto https;                                                        } 

docker-menulis.yml

version: '3'services:        web:    build: .    volumes:            - shared:/var/app    command: "npm start"volumes:   shared:

Namun dikatakan saya tidak dapat terhubung ke soket, meskipun ada di lokasi ini di host.

Anda dapat berkomunikasi mesin host atau bahkan dua kontainer menggunakan soket yang sama. Dalam kasus umum dua kontainer, Anda harus memulai dua dockers dari mesin host berbagi volume yang harus dibuat di mesin host.

docker run --name "containerA" -v /var/run/common_socket_dir:/var/run/common_socket_dir...docker run --name "containerB" -v /var/run/common_socket_dir:/var/run/common_socket_dir...

Keduanya, containerA dan containerB sekarang dapat menggunakan soket sebagai / var/run/common_socket_dir / socketX untuk interkoneksi. Tentu saja, mesin host dapat menggunakan soket dalam buku ini untuk berkomunikasi dengan wadah