docker构建dnscrypt-proxy镜像

Dockerfile

# Dockerfile for dnscrypt-proxy based alpine
FROM alpine:latest
LABEL maintainer="yunhaoz659@gmail.com"

WORKDIR /opt/dnscrypt-proxy

COPY ./dnscrypt-proxy /opt/dnscrypt-proxy/dnscrypt-proxy
COPY ./dnscrypt-proxy.toml /opt/dnscrypt-proxy/dnscrypt-proxy.toml

RUN chmod a+x /opt/dnscrypt-proxy/dnscrypt-proxy && \
    sed -i 's|http.*/alpine/|https://mirrors.aliyun.com/alpine/|g' /etc/apk/repositories && \ 
    apk add --no-cache curl openssl openssl-dev

EXPOSE 53

ENTRYPOINT [ "/opt/dnscrypt-proxy/dnscrypt-proxy", "-config", "/opt/dnscrypt-proxy/dnscrypt-proxy.toml" ]

dnscrypt-proxy.toml

server_names = ['tihsdenenh-doh','srencgcmm-doh','kwicae-doh','cberohn-doh','osbt-doh','uhekotritlm-doh','whahirrreaomhw-doh','riogeenn-doh','95BDA3FC-doh','DA966239-doh','630A1D80-doh','9B3997BA-doh','8F4B5F75-doh','5C5F74B9-doh','E7DCEEF0-doh','64B39D96-doh']
listen_addresses = ['0.0.0.0:53']
max_clients = 1000
user_name = 'nobody'
ipv4_servers = true
ipv6_servers = false
dnscrypt_servers = true
doh_servers = true
odoh_servers = false
require_dnssec = false
require_nolog = true
require_nofilter = true
disabled_server_names = []
force_tcp = false
http3 = false
timeout = 5000
keepalive = 30
blocked_query_response = 'refused'
log_file = 'dnscrypt-proxy.log'
cert_refresh_delay = 240
bootstrap_resolvers = ['119.29.29.29:53', '223.5.5.5:53', '114.114.114.114:53', '1.0.0.1:53', '64.6.64.6:53','9.9.9.10:53', '8.8.8.8:53', '149.112.112.10:53']
ignore_system_dns = true
netprobe_timeout = 60
netprobe_address = '64.6.64.6:53'
log_files_max_size = 10
log_files_max_age = 7
log_files_max_backups = 1
block_ipv6 = false
block_unqualified = true
block_undelegated = true
reject_ttl = 10
cache = true
cache_size = 262144
cache_min_ttl = 600
cache_max_ttl = 3600
cache_neg_min_ttl = 60
cache_neg_max_ttl = 600
[captive_portals]
[query_log]
file = 'query.log'
format = 'tsv'
ignored_qtypes = ['DNSKEY', 'NS']
[nx_log]
format = 'tsv'
[allowed_names]
[allowed_ips]
[schedules]
[doh_client_x509_auth]
[anonymized_dns]
skip_incompatible = false
[dns64]
[static]
[static.tihsdenenh-doh]
stamp = 'sdns://AgcAAAAAAAAACTIyMy41LjUuNQAOZG5zLmFsaWRucy5jb20KL2Rucy1xdWVyeQ'
[static.srencgcmm-doh]
stamp = 'sdns://AgcAAAAAAAAACTIyMy42LjYuNgAOZG5zLmFsaWRucy5jb20KL2Rucy1xdWVyeQ'
[static.kwicae-doh]
stamp = 'sdns://AgcAAAAAAAAACjEuMTIuMTIuMTIAB2RvaC5wdWIKL2Rucy1xdWVyeQ'
[static.cberohn-doh]
stamp = 'sdns://AgcAAAAAAAAADDEyMC41My41My41MwAHZG9oLnB1YgovZG5zLXF1ZXJ5'
[static.osbt-doh]
stamp = 'sdns://AgcAAAAAAAAADzEwMS4xOTkuMTEzLjIwOAAKZG9oLjM2MC5jbgovZG5zLXF1ZXJ5'
[static.uhekotritlm-doh]
stamp = 'sdns://AgcAAAAAAAAADDM2Ljk5LjE3MC44NgAKZG9oLjM2MC5jbgovZG5zLXF1ZXJ5'
[static.whahirrreaomhw-doh]
stamp = 'sdns://AgcAAAAAAAAADjE4MC4xNjMuMjQ5Ljc1AApkb2guMzYwLmNuCi9kbnMtcXVlcnk'
[static.riogeenn-doh]
stamp = 'sdns://AgcAAAAAAAAADjIyMS4yMjguMjE3LjI4AA9kbnMuaXB2NmRucy5jb20KL2Rucy1xdWVyeQ'
[static.95BDA3FC-doh]
stamp = 'sdns://AgcAAAAAAAAADjE0OS4xMTIuMTIyLjEwAB5wcml2YXRlLmNhbmFkaWFuc2hpZWxkLmNpcmEuY2EKL2Rucy1xdWVyeQ'
[static.DA966239-doh]
stamp = 'sdns://AgcAAAAAAAAADDE0Ni4xMTIuNDEuMwAcZG9oLmZhbWlseXNoaWVsZC5vcGVuZG5zLmNvbQovZG5zLXF1ZXJ5'
[static.630A1D80-doh]
stamp = 'sdns://AgcAAAAAAAAADzE4NS4yMjguMTY4LjE2OAAVZG9oLmNsZWFuYnJvd3Npbmcub3JnEi9kb2gvYWR1bHQtZmlsdGVyLw'
[static.9B3997BA-doh]
stamp = 'sdns://AgcAAAAAAAAADzE4NS4yMjguMTY4LjE2OAAVZG9oLmNsZWFuYnJvd3Npbmcub3JnEy9kb2gvZmFtaWx5LWZpbHRlci8'
[static.8F4B5F75-doh]
stamp = 'sdns://AgcAAAAAAAAADjE2LjE3MC4xNTAuMjIxABBkbnMuYnJhaG1hLndvcmxkCi9kbnMtcXVlcnk'
[static.5C5F74B9-doh]
stamp = 'sdns://AgcAAAAAAAAADjEwNC4xNi4xMzMuMjI5ABJkbnMuY2xvdWRmbGFyZS5jb20KL2Rucy1xdWVyeQ'
[static.E7DCEEF0-doh]
stamp = 'sdns://AgcAAAAAAAAADTc4LjQ3LjE2My4xNDEAGGFkZnJlZS51c2FibGVwcml2YWN5Lm5ldAovZG5zLXF1ZXJ5'
[static.64B39D96-doh]
stamp = 'sdns://AgcAAAAAAAAADDg5LjM4LjEzMS4zOAAYZG5zbmwtbm9hZHMuYWxla2JlcmcubmV0Ci9kbnMtcXVlcnk'

dnscrypt-proxy下载:

dnscrypt-proxy

Categories: docker与kubernetes