{
  "version": "https://jsonfeed.org/version/1", 
  "title": "Docker", 
  "description": "\u57fa\u4e8e Linux Container \u6280\u672f\u7684\u8f7b\u91cf\u7ea7\u865a\u62df\u5316\u73af\u5883\u3002", 
  "home_page_url": "https://www.v2ex.com/go/docker", 
  "feed_url": "https://www.v2ex.com/feed/docker.json", 
  "icon": "https://cdn.v2ex.com/navatar/e7f8/a7fb/716_large.png?m=1718314882", 
  "favicon": "https://cdn.v2ex.com/navatar/e7f8/a7fb/716_normal.png?m=1718314882", 
  "items": [
    {
      "author": {
        "url": "https://www.v2ex.com/member/52pojie", 
        "name": "52pojie", 
        "avatar": "https://cdn.v2ex.com/avatar/527c/0ce2/511156_large.png?m=1773650166"
      }, 
      "url": "https://www.v2ex.com/t/1204216", 
      "title": "\u8bf7\u95ee OrbStack \u754c\u9762\u4e0b\u4e0d\u80fd\u4fee\u6539\u53c2\u6570\u5417\uff1f", 
      "id": "https://www.v2ex.com/t/1204216", 
      "date_published": "2026-04-08T02:09:31+00:00", 
      "content_html": "<p>\u60f3\u4fee\u6539\u7aef\u53e3\u6620\u5c04\u8def\u5f84\uff0c\u662f\u8fd8\u8981\u5728\u7ec8\u7aef\u4e0b\u64cd\u4f5c\u5417\uff1f OrbStack \u754c\u9762\u4e0b\u6ca1\u627e\u5230\u80fd\u4fee\u6539\u7684\u5730\u65b9\u554a</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/52pojie", 
        "name": "52pojie", 
        "avatar": "https://cdn.v2ex.com/avatar/527c/0ce2/511156_large.png?m=1773650166"
      }, 
      "url": "https://www.v2ex.com/t/1203809", 
      "title": "\u5c0f\u767d\u6c42\u95ee\u5982\u4f55\u8ba9 OrbStack \u8d70\u4ee3\u7406", 
      "id": "https://www.v2ex.com/t/1203809", 
      "date_published": "2026-04-06T08:27:40+00:00", 
      "content_html": "<p>macmini \u7528\u7684 v2rayn \uff0c\u73b0\u5728\u9ed8\u8ba4 OrbStack \u597d\u50cf\u8d70\u4e0d\u4e86\u4ee3\u7406\uff0c\u62c9\u53d6\u955c\u50cf\u5931\u8d25\uff0c\u8bf7\u95ee\u60f3\u8ba9 OrbStack \u8d70 v2rayn \u4ee3\u7406\uff0c \u8bf7\u95ee\u5982\u4f55\u914d\u7f6e</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/yujianwjj", 
        "name": "yujianwjj", 
        "avatar": "https://cdn.v2ex.com/gravatar/1f488ec8d742b28f39e69f9ad297e139?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1202386", 
      "title": "mac \u4e0a\u9762\u7684 docker desktop \u90fd\u66f4\u65b0\u4e9b\u5565\u554a", 
      "id": "https://www.v2ex.com/t/1202386", 
      "date_published": "2026-03-31T00:14:21+00:00", 
      "content_html": "<p>\u66f4\u65b0\u9891\u7387\u611f\u89c9\u8ddf cursor \u4e00\u6837\uff0ccursor \u6bcf\u6b21\u66f4\u65b0\u90fd\u6709\u65b0\u7684\u529f\u80fd\u3002docker desktop \u611f\u89c9\u4e5f\u662f\u9694\u51e0\u5929\u5c31\u66f4\u65b0\u4e00\u6b21\uff0c\u90fd\u4e0d\u77e5\u9053\u66f4\u65b0\u4e9b\u5565\u3002</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/chokinsen", 
        "name": "chokinsen", 
        "avatar": "https://cdn.v2ex.com/avatar/5732/6f1f/720657_large.png?m=1770349489"
      }, 
      "url": "https://www.v2ex.com/t/1191161", 
      "title": "\u963f\u91cc\u4e91\u8f7b\u91cf\u670d\u52a1\u5668\u4e2d\u62c9\u53d6 Docker \u955c\u50cf\u95ee\u9898", 
      "id": "https://www.v2ex.com/t/1191161", 
      "date_published": "2026-02-06T03:47:46+00:00", 
      "content_html": "<p>\u5404\u4f4d\u5927\u4f6c\uff0c\u79df\u7528\u4e86\u4e00\u53f0\u963f\u91cc\u4e91\u8f7b\u91cf\u670d\u52a1\u5668\uff0c\u94fe\u63a5\u4e0a\u4e4b\u540e\u7528 Docker \u90e8\u7f72\u9879\u76ee\u3002\n\u5df2\u7ecf\u5728/etc/docker/daemon.json \u8fd9\u4e2a\u6587\u4ef6\u91cc\u914d\u7f6e\u91cc\u963f\u91cc\u4e91\u63a8\u8350\u7684\u955c\u50cf\u5730\u5740\uff08 <a href=\"https://qkpevwpj.mirror.aliyuncs.com\" rel=\"nofollow\">https://qkpevwpj.mirror.aliyuncs.com</a> \uff09\uff0c\u7528 docker info \u547d\u4ee4\u4e5f\u53ef\u4ee5\u770b\u5230\u914d\u7f6e\u7684\u955c\u50cf\u5730\u5740\n\u4f46\u662f\u6211\u4f7f\u7528 docker-compose up -d --build \u542f\u52a8\u7684\u65f6\u5019\u8fd8\u662f\u4f1a\u62a5\u9519</p>\n<pre><code>root@aaaaaaaaaaaaa:/opt/myapp# docker-compose up -d --build\nPulling redis (redis:7)...\nERROR: Get \"https://registry-1.docker.io/v2/\": context deadline exceeded\n</code></pre>\n<p>\u770b\u8d77\u6765\u50cf\u662f\u955c\u50cf\u6ca1\u914d\u7f6e\u4e0a\uff0c\u4f46\u662f\u6211\u91cd\u542f docker \uff0c\u5237\u65b0\u7f51\u7edc\u7f13\u5b58\uff0c\u91cd\u542f\u670d\u52a1\u5668\u90fd\u8bd5\u8fc7\u4e86\uff0c\u8bf7\u95ee\u8fd9\u662f\u963f\u91cc\u4e91\u7684\u95ee\u9898\u5417\uff1f</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/sn0wdr1am", 
        "name": "sn0wdr1am", 
        "avatar": "https://cdn.v2ex.com/gravatar/c6a7919632a1797e1f075dc31ffb0e87?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1191033", 
      "title": "\u73b0\u5728\u5927\u5bb6\u5982\u4f55\u62c9\u53d6 Docker \u955c\u50cf\uff1f", 
      "id": "https://www.v2ex.com/t/1191033", 
      "date_published": "2026-02-05T11:14:14+00:00", 
      "content_html": "<ol>\n<li>\u4e4b\u524d\u642d\u7684 Cloudflare \u53cd\u4ee3 docker \u955c\u50cf\u7f51\u7ad9\u597d\u50cf\u6ca1\u6cd5\u7528\u4e86\u3002</li>\n<li>\u4f7f\u7528\u4ee3\u7406\uff0c\u62c9\u53d6 docker \u955c\u50cf\u7684\u901f\u5ea6\u4e5f\u5f88\u611f\u4eba\u3002\uff08 10KB/s - 40KB/s \uff09</li>\n<li>\u4e4b\u524d\u7528\u963f\u91cc\u4e91\u955c\u50cf\u7684\u65f6\u5019\uff0c\u51fa\u73b0\u8fc7\u4e00\u4e2a\u5f88\u6076\u5fc3\u7684\u95ee\u9898\u3002\uff08\u62c9\u53d6\u955c\u50cf latest \u4e0b\u8f7d\u5230\u5f88\u4e45\u4e4b\u524d\u7684\u955c\u50cf\uff09</li>\n<li>\u611f\u89c9\u6ca1\u6cd5\u5feb\u901f\u62c9\u53d6 docker \u955c\u50cf\u4e86\u3002</li>\n</ol>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/netnr", 
        "name": "netnr", 
        "avatar": "https://cdn.v2ex.com/avatar/9bfd/9fda/426497_large.png?m=1758579152"
      }, 
      "url": "https://www.v2ex.com/t/1185940", 
      "title": "\u8f7b\u91cf\u7ea7 OCR \u6587\u5b57\u8bc6\u522b\u670d\u52a1 netnr/liteocr", 
      "id": "https://www.v2ex.com/t/1185940", 
      "date_published": "2026-01-15T08:19:34+00:00", 
      "content_html": "<p><a href=\"https://hub.docker.com/r/netnr/liteocr\" rel=\"nofollow\">https://hub.docker.com/r/netnr/liteocr</a></p>\n<p>\u8bc6\u522b\u7ed3\u679c\u4ec5\u7eaf\u6587\u5b57\uff0c<strong>\u4e0d\u9002\u5408\u4e13\u4e1a\u573a\u666f</strong></p>\n<pre><code>docker run -d -p 7715:7715 --name liteocr netnr/liteocr\n</code></pre>\n<pre><code class=\"language-bash\"># PUT\ncurl http://localhost:7715/api/ocr -T image.png\n\n# GET URL\ncurl \"http://localhost:7715/api/ocr?url=https://example.com/image.png\"\n\n# POST file\ncurl -X POST http://localhost:7715/api/ocr -F \"file=@image.png\"\n\n# Swagger\nhttp://localhost:7715/swagger\n</code></pre>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/YanSeven", 
        "name": "YanSeven", 
        "avatar": "https://cdn.v2ex.com/avatar/3f22/feff/383743_large.png?m=1775465214"
      }, 
      "url": "https://www.v2ex.com/t/1184221", 
      "date_modified": "2026-01-11T03:29:10+00:00", 
      "content_html": "\u4e3a\u4ec0\u4e48 TUN+\u89c4\u5219\u4e5f\u4e0d\u884c\uff0c\u6211\u770b\u4e86\u4e0b\u8bf7\u6c42\u8bb0\u5f55\u91cc\u9762\u7684\uff0c\u65e0\u8bba\u662f\u89c4\u5219\u8fd8\u662f\u5168\u5c40\uff0c\u90fd\u8d70\u4e86\u4ee3\u7406\u554a\u3002", 
      "date_published": "2026-01-09T05:41:30+00:00", 
      "title": "\u73b0\u5728\u5b98\u65b9 docker \u62c9\u955c\u50cf\u5fc5\u987b TUN+\u5168\u5c40\u4e86\u5417", 
      "id": "https://www.v2ex.com/t/1184221"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/NEANC", 
        "name": "NEANC", 
        "avatar": "https://cdn.v2ex.com/avatar/3685/9f9f/571705_large.png?m=1722786969"
      }, 
      "url": "https://www.v2ex.com/t/1180794", 
      "date_modified": "2025-12-25T00:39:09+00:00", 
      "content_html": "<p>\u76ee\u524d\u662f\u901a\u8fc7 <code>OpenResty</code> \u624b\u52a8\u7ba1\u7406\u7684\uff0c\u670d\u52a1\u4e0d\u591a\u7684\u60c5\u51b5\u4e0b\u624b\u52a8\u52a0\u4e2d\u95f4\u4ef6 <code>TinyAuth</code> \u8fd8\u80fd\u63a5\u53d7\uff0c\u540e\u9762\u670d\u52a1\u591a\u4e86\u6211\u6015\u4f1a\u5f88\u5934\u75bc\u3002</p>\n<p>\u4f46\u4f7f\u7528 <code>OpenResty</code> \u505a\u53cd\u4ee3\u7684\u60c5\u51b5\u4e0b\uff0c\u611f\u89c9\u52a0\u4e2a <code>Traefik</code> \u4e2a\u4e5f\u662f\u8981\u624b\u52a8\u914d\u7f6e\uff0c\u8981\u662f\u6709\u4e2a\u7c7b\u4f3c\u7684\u73a9\u610f\u5c31\u597d\u4e86</p>\n<p>\u65e2\u80fd\u81ea\u52a8\u53d1\u73b0\u4e5f\u80fd\u624b\u52a8\u914d\u7f6e\uff0c\u6211\u662f\u4e0d\u662f\u60f3\u5f97\u592a\u7f8e\u4e86 XD</p>\n", 
      "date_published": "2025-12-24T00:26:20+00:00", 
      "title": "\u8bf7\u6559\u4e00\u4e0b\u4f6c\u4eec\uff0c\u5728\u4f7f\u7528 1panel \u7684\u60c5\u51b5\u4e0b\uff0c\u6709\u6ca1\u6709\u5fc5\u8981\u518d\u90e8\u7f72 Traefik \u4f5c\u4e3a Docker \u7edf\u4e00\u7f51\u5173\uff1f", 
      "id": "https://www.v2ex.com/t/1180794"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/movq", 
        "name": "movq", 
        "avatar": "https://cdn.v2ex.com/avatar/046c/e28c/463491_large.png?m=1683787993"
      }, 
      "url": "https://www.v2ex.com/t/1180420", 
      "date_modified": "2025-12-22T15:52:58+00:00", 
      "content_html": "", 
      "date_published": "2025-12-22T06:50:29+00:00", 
      "title": "\u521b\u5efa docker \u955c\u50cf\u65f6\u4e3a\u4e86\u9632\u6b62\u7ed3\u675f\uff0c\u8fd0\u884c sleep infinity \u548c tail -f /dev/null \u54ea\u4e2a\u66f4\u597d", 
      "id": "https://www.v2ex.com/t/1180420"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/eephee", 
        "name": "eephee", 
        "avatar": "https://cdn.v2ex.com/avatar/a967/a383/539657_large.png?m=1719558879"
      }, 
      "url": "https://www.v2ex.com/t/1180383", 
      "title": "2025 \u5e74\u4e86\uff0c\u5927\u5bb6\u516c\u53f8\u7684\u670d\u52a1\u5668\u7528\u7684\u662f debian \u8fd8\u662f ubuntu \u5440", 
      "id": "https://www.v2ex.com/t/1180383", 
      "date_published": "2025-12-22T04:36:57+00:00", 
      "content_html": "<p>\u6211\u4eec\u516c\u53f8\u4e00\u76f4\u7528\u7684 openjdk:11-jre \u7684 docker \u955c\u50cf\uff0c\u73b0\u5728\u51c6\u5907\u6362\u6210 eclipse-temurin \u4e86\uff0c\u4e3b\u8981\u662f\u56e0\u4e3a\u516c\u53f8\u8981\u8fc1\u79fb\u5230\u8f83\u65b0\u7248\u672c\u7684 k8s \u96c6\u7fa4\u4e86\uff0ck8s \u540e\u9762\u4f1a\u53ea\u80fd\u652f\u6301 cgroup v2 \u673a\u5668\u3002eclipse-temurin \u5bf9 cgroup v2 \u652f\u6301\u6bd4 openjdk \u8981\u597d\u3002</p>\n<p>\u56e0\u4e3a openjdk:11-jre \u662f\u57fa\u4e8e debian \u6784\u5efa\u7684\uff0c\u6240\u4ee5\u6211\u5e73\u5e38\u521b\u5efa ECS \u65f6\u4e5f\u503e\u5411\u4e8e\u7528 debian \uff0c\u7ed9\u5ba2\u6237\u7684\u90e8\u7f72\u8bf4\u660e\u6587\u6863\u90fd\u662f\u4f18\u5148\u63a8\u8350 debian \u7cfb\u7edf\uff0c\u8fd9\u6837\u4f53\u9a8c\u4e0a\u6bd4\u8f83\u4e00\u81f4\u3002</p>\n<p>\u73b0\u5728 eclipse-temurin \u662f\u57fa\u4e8e ubuntu \u6784\u5efa\u7684\uff0c\u4f46\u662f\u6211\u7684 ECS \u4ecd\u7136\u662f debian \uff0c\u4f7f\u7528\u4e0a\u603b\u662f\u6709\u70b9\u4e0d\u723d\uff0c\u867d\u7136\u5e73\u65f6\u7528\u8d77\u6765\u90fd\u5dee\u4e0d\u591a\uff0c\u6bd5\u7adf ubuntu \u4e5f\u662f\u57fa\u4e8e debian \uff0c\u4f46\u662f\u5bf9\u4e8e\u8f7b\u5fae\u5f3a\u8feb\u75c7\u7684\u6211\u6765\u8bf4\u8fd8\u662f\u6709\u4e00\u4e22\u4e22\u4e0d\u723d\u3002</p>\n<p>\u4e0d\u77e5\u9053\u5927\u5bb6\u7528 ubuntu \u591a\u8fd8\u662f debian \u591a\uff0c\u5c31\u670d\u52a1\u5668\u7aef\u6765\u8bf4\u7684\u8bdd</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/DejavuMoe", 
        "name": "DejavuMoe", 
        "avatar": "https://cdn.v2ex.com/avatar/1739/33b7/532638_large.png?m=1768714826"
      }, 
      "url": "https://www.v2ex.com/t/1179714", 
      "title": "Watchtower \u505c\u6b62\u7ef4\u62a4", 
      "id": "https://www.v2ex.com/t/1179714", 
      "date_published": "2025-12-18T04:17:09+00:00", 
      "content_html": "<p><a href=\"https://github.com/containrrr/watchtower/discussions/2135\" rel=\"nofollow\">https://github.com/containrrr/watchtower/discussions/2135</a></p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/zhoufan47", 
        "name": "zhoufan47", 
        "avatar": "https://cdn.v2ex.com/gravatar/fa322bbd5f1d1a8a7ecc6aac84d3933f?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1179680", 
      "title": "NAS \u4e0a\u90e8\u7f72\u81ea\u5236 docker \u7a0b\u5e8f\u53d1\u751f\u7f51\u7edc\u8fde\u63a5\u76f8\u5173\u95ee\u9898", 
      "id": "https://www.v2ex.com/t/1179680", 
      "date_published": "2025-12-18T02:59:48+00:00", 
      "content_html": "<p>\u4e4b\u524d\u4e00\u76f4\u90fd\u662f\u7528\u5176\u4ed6\u5f00\u53d1\u8005 build \u7684 docker \u6210\u54c1\n\u6628\u5929\u7b97\u662f\u9996\u6b21\u628a\u81ea\u5df1\u5199\u7684 python \u7a0b\u5e8f\u6253\u5305\u6210 docker \uff0c\u90e8\u7f72\u5230\u81ea\u5df1\u7684\u5a01\u8054\u901a nas \u4e0a\n\u7136\u540e\u5c31\u51fa\u73b0\u4e86\u4e00\u4e2a\u5f88\u5947\u602a\u7684\u95ee\u9898\n\u53ea\u8981\u628a\u8fd9\u4e2a\u5bb9\u5668\u7684\u7f51\u7edc\u6a21\u5f0f\u8bbe\u7f6e\u6210 bridge \u540e\uff0c\u8fd9\u4e2a\u5bb9\u5668\u91cc\u8fd0\u884c\u7684 python \u7a0b\u5e8f\u5c31\u6ca1\u529e\u6cd5\u8fde\u63a5\u5916\u7f51\uff0cfast api \u63d0\u4f9b\u7684\u63a5\u53e3\uff0c\u5916\u90e8\u7f51\u7edc\u4e5f\u65e0\u6cd5\u8bbf\u95ee\u3002docker exec \u8fdb\u53bb\u540e\uff0c\u5b9e\u9645\u53ef\u4ee5 curl \u5230\u4e92\u8054\u7f51\n\u4f46\u662f\u628a docker \u7f51\u7edc\u8bbe\u7f6e\u6210 nat+\u7aef\u53e3\u6620\u5c04\uff0c\u90a3\u5c31\u53ef\u4ee5\u6b63\u5e38\u4ece\u5916\u90e8\u7f51\u7edc\u8bbf\u95ee\u4ee5\u53ca\u5bb9\u5668\u5185\u7684 python \u7a0b\u5e8f\u4e5f\u80fd\u6b63\u5e38\u8bbf\u95ee\u5916\u90e8\u7f51\u7edc\u3002\n\u8fd9\u4f1a\u662f\u4ec0\u4e48\u95ee\u9898\u5462\uff1f\u6709\u4eba\u9047\u5230\u8fc7\u6216\u8005\u53ef\u4ee5\u6307\u6307\u8def\u4e48</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/BeforeTooLate", 
        "name": "BeforeTooLate", 
        "avatar": "https://cdn.v2ex.com/avatar/0dae/9391/455039_large.png?m=1769153923"
      }, 
      "url": "https://www.v2ex.com/t/1177620", 
      "date_modified": "2025-12-08T08:23:51+00:00", 
      "content_html": "<p>\u5df2\u7ecf docker pull \u4e0b\u5b98\u65b9\u7684 centos6.8 \u955c\u50cf\uff0c<br/>\n\u4f46\u662f\u5f53\u6211\u6267\u884c &gt;docker run -it --name centos68_test centos:6.8 /bin/bash<br/>\n\u53d1\u73b0\u8fdb\u4e0d\u53bb\u5bb9\u5668\u91cc\u9762\uff0c\u67e5\u4e86\u4e0b\u8bf4\u73b0\u4ee3\u7684 docker \u90fd\u4e0d\u652f\u6301\u4e86\uff0c\u5efa\u8bae\u6211\u7528 centos7 \u7248\u672c\u4ee5\u4e0a\u5bb9\u5668\u955c\u50cf\uff0c\u4f46\u662f\u6211\u5982\u679c\u53ea\u60f3\u590d\u523b\u4ee3\u7801\u5c4e\u5c71\u539f\u5148\u73af\u5883\u600e\u4e48\u529e\uff0c\u964d docker \u7248\u672c\uff1f</p>\n", 
      "date_published": "2025-12-08T08:14:03+00:00", 
      "title": "\u8bf7\u95ee\u4e0b\u73b0\u4ee3\u7684 docker \u7248\u672c\uff0c\u662f\u65e0\u6cd5\u518d\u4f7f\u7528 centos6.8 \u8fd9\u7c7b\u5bb9\u5668\u4e86\u4e48\uff1f", 
      "id": "https://www.v2ex.com/t/1177620"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/loganovo", 
        "name": "loganovo", 
        "avatar": "https://cdn.v2ex.com/avatar/23d5/c262/572769_large.png?m=1746526781"
      }, 
      "url": "https://www.v2ex.com/t/1177200", 
      "title": "\u73b0\u5728\u662f\u4e0d\u63a8\u8350\u4f7f\u7528 \u963f\u91cc\u4e91\u6216\u817e\u8baf\u4e91\u6216\u9ad8\u6821\u7684 dokcer \u955c\u50cf\u6e90\u5417? \u4e3a\u4ec0\u4e48? \r\n\u4e00\u76f4\u6302\u68af\u5b50\u7528 docker, \u4e0d\u4e86\u89e3\u73b0\u5728\u7684\u60c5\u51b5\u4e86", 
      "id": "https://www.v2ex.com/t/1177200", 
      "date_published": "2025-12-05T10:22:36+00:00", 
      "content_html": ""
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/eephee", 
        "name": "eephee", 
        "avatar": "https://cdn.v2ex.com/avatar/a967/a383/539657_large.png?m=1719558879"
      }, 
      "url": "https://www.v2ex.com/t/1176455", 
      "title": "\u79c1\u6709\u5316\u90e8\u7f72\u4e86\u4e00\u5957\u516c\u53f8\u7684\u7cfb\u7edf\uff0c\u5982\u4f55\u6709\u6548\u4fdd\u62a4\u5bb9\u5668\u91cc\u9762\u7684\u6587\u4ef6\u4e0d\u88ab\u5ba2\u6237\u62ff\u5230", 
      "id": "https://www.v2ex.com/t/1176455", 
      "date_published": "2025-12-02T11:12:37+00:00", 
      "content_html": "<p>\u76ee\u524d\u6211\u4eec\u7684\u4e1a\u52a1\u7cfb\u7edf\u4e2d\u6709\u4e00\u4e2a java \u540e\u7aef\u670d\u52a1\uff0c\u8be5\u670d\u52a1\u7684 docker \u955c\u50cf\u4e2d\u9664\u4e86\u5305\u542b\u6784\u5efa\u597d\u7684 jar \u5305\u5916\uff0c\u8fd8\u5305\u542b\u4e86\u4e00\u4e2a\u4e8c\u8fdb\u5236\u53ef\u6267\u884c\u6587\u4ef6\u548c\u4e00\u4e9b\u52a8\u6001\u5e93\uff0c\u8fd0\u884c\u65f6 java \u4f1a\u5f00\u5b50\u8fdb\u7a0b\u8c03\u7528\u8fd9\u4e2a\u4e8c\u8fdb\u5236\u6587\u4ef6\u53bb\u505a\u4e00\u4e9b\u4e8b\u60c5\u3002\u7531\u4e8e\u8fd9\u4e2a\u4e8c\u8fdb\u5236\u6587\u4ef6\u4f9d\u8d56\u7684\u590d\u6742\u6027\uff0c\u6211\u4e0d\u592a\u597d <code>FROM scratch</code> \u53bb\u6784\u5efa\u955c\u50cf\uff0c\u56e0\u6b64\u76ee\u524d\u6211\u662f\u57fa\u4e8e debian \u53bb\u6784\u5efa\u7684\u955c\u50cf\u3002</p>\n<p>\u79c1\u6709\u5316\u90e8\u7f72\u65f6\uff0c\u6211\u4eec\u4f1a\u5728\u5ba2\u6237\u63d0\u4f9b\u7684\u673a\u5668\u4e0a\u9762\u90e8\u7f72\u4e00\u4e2a k3s \u96c6\u7fa4\u6765\u8dd1\u8fd9\u5957\u7cfb\u7edf\u3002</p>\n<p>\u9886\u5bfc\u8bf4\u8981\u9632\u6b62\u5ba2\u6237\u8fdb\u5165\u5bb9\u5668\u62ff\u5230\u91cc\u9762\u7684\u4e8c\u8fdb\u5236\u53ef\u6267\u884c\u6587\u4ef6\u548c\u52a8\u6001\u5e93\uff0c\u6211\u76ee\u524d\u662f\u5728\u6784\u5efa\u955c\u50cf\u65f6\u5c06 bash|sh|dash \u6084\u6084\u79fb\u52a8\u5230\u5176\u4ed6\u76ee\u5f55\u4e0b\uff08\u65b9\u4fbf\u6211\u4eec\u81ea\u5df1\u8c03\u8bd5\uff09\uff0c\u4f46\u662f\u6211\u77e5\u9053\u8fd9\u4e2a\u505a\u6cd5\u5176\u5b9e\u662f\u63a9\u8033\u76d7\u94c3\uff0c\u56e0\u4e3a\u53ea\u8981\u522b\u4eba\u62f7\u8d1d\u4e00\u4e2a shell \u6587\u4ef6\u8fdb\u53bb\u5c31\u53ef\u4ee5\u7834\u89e3\u3002</p>\n<p>\u60f3\u95ee\u4e00\u4e0b\u5173\u4e8e\u8fd9\u5757\u76ee\u524d\u6709\u6ca1\u6709\u4eba\u6709\u76f8\u5bf9\u6210\u719f\u7684\u65b9\u6848\u5462</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/loveqianool", 
        "name": "loveqianool", 
        "avatar": "https://cdn.v2ex.com/avatar/48c7/bd64/48403_large.png?m=1500796238"
      }, 
      "url": "https://www.v2ex.com/t/1175711", 
      "title": "Docker 29.1 \u4e0d\u80fd\u89e3\u6790\u5916\u90e8 dns", 
      "id": "https://www.v2ex.com/t/1175711", 
      "date_published": "2025-11-28T08:56:24+00:00", 
      "content_html": "<p>\u6392\u67e5\u4e86\u51e0\u4e2a\u5c0f\u65f6\uff0c\u770b reddit \u624d\u53d1\u73b0\u662f docker \u95ee\u9898\u3002</p>\n<p>\u89e3\u51b3\u65b9\u6848\u662f\u964d\u7ea7 docker \u6216 \u91cd\u65b0\u65b0\u5efa\u5bb9\u5668\u3002\n\u91cd\u542f\u670d\u52a1\u5668\u65e0\u6548\uff0c\u5fc5\u987b docker compose down \u65b0\u5efa\u5bb9\u5668\u3002</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/handwork", 
        "name": "handwork", 
        "avatar": "https://cdn.v2ex.com/gravatar/f9915cd8db3faf8185af61e0fea48deb?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1172165", 
      "title": "\u6c42\u52a9 docker \u4e2d\u5b89\u88c5 portainer \u4e0d\u80fd\u8fde\u63a5 docker.sock", 
      "id": "https://www.v2ex.com/t/1172165", 
      "date_published": "2025-11-12T01:12:20+00:00", 
      "content_html": "<p>docker \u6309\u6b64\u5b89\u88c5 portainer:</p>\n<pre><code>docker run -d -p 9443:9443 -p 8000:8000 \\\n    --name portainer --restart always \\\n    -v /var/run/docker.sock:/var/run/docker.sock \\\n    -v portainer_data:/data \\\n    -v /data/certs:/certs \\\n    portainer/portainer-ce:lts \\\n    --tlscert /certs/fullchain.cer \\\n    --tlskey /certs/domain.key\n</code></pre>\n<p>\u5b89\u88c5\u6210\u529f\u540e\uff0c\u767b\u5f55\u8fdb\u5165\u540e Environments \u8fde\u63a5\u663e\u793a\u201cUp\u201d\uff0c\u70b9\u51fb\u5c31\u53d8\u201cDown\u201d\uff0c\u8fc7\u4f1a\u53c8\u201cUp\u201d,\u70b9\u51fb\u53c8\u201cDown\u201d,\u63d0\u793a\u201cFailed loading environment\u201d</p>\n<p>Environments \u662f unix:///var/run/docker.sock \uff0c</p>\n<p>\u67e5 portainer \u65e5\u5fd7\uff1a</p>\n<pre><code>2025/11/12 12:58AM INF github.com/portainer/portainer/api/cmd/portainer/main.go:325 &gt; encryption key file not present | filename=/run/secrets/portainer\n2025/11/12 12:58AM INF github.com/portainer/portainer/api/cmd/portainer/main.go:365 &gt; proceeding without encryption key |\n2025/11/12 12:58AM INF github.com/portainer/portainer/api/database/boltdb/db.go:137 &gt; loading PortainerDB | filename=portainer.db\n2025/11/12 12:58AM INF github.com/portainer/portainer/api/chisel/service.go:228 &gt; generated a new Chisel private key file | private-key=/data/chisel/private-key.pem\n2025/11/12 00:58:48 server: Reverse tunnelling enabled\n2025/11/12 00:58:48 server: Fingerprint G7ulBdMzW20ZXnDOtfZM6smFEqP7JeDe7nUu5T2GNJc=\n2025/11/12 00:58:48 server: Listening on http://0.0.0.0:8000\n2025/11/12 12:58AM INF github.com/portainer/portainer/api/cmd/portainer/main.go:636 &gt; starting Portainer | build_number=236 go_version=1.24.9 image_tag=2.33.3-linux-amd64 nodejs_version=18.20.8 version=2.33.3 webpack_version=5.88.2 yarn_version=1.22.22\n2025/11/12 12:58AM INF github.com/portainer/portainer/api/http/server.go:367 &gt; starting HTTPS server | bind_address=:9443\n2025/11/12 12:58AM INF github.com/portainer/portainer/api/http/server.go:351 &gt; starting HTTP server | bind_address=:9000\n2025/11/12 12:59AM ERR github.com/portainer/portainer/api/internal/snapshot/snapshot.go:213 &gt; the Podman environment option doesn't support Docker environments. Please select the Docker option instead. | error=\"the Podman environment option doesn't support Docker environments. Please select the Docker option instead.\" endpoint=local\n</code></pre>\n<p>\u6700\u540e 1 \u6761\u6709\u4e2a ERR \uff0c\u201cPodman environment option doesn't support Docker environments\u201d\u3002\nPodman \u548c Docker \u8bc6\u522b\u9519\u8bef\uff1f\n\u8bf7\u6559\u5927\u4f6c\uff0c\u8fd9\u4e2a\u539f\u56e0\u662f\u600e\u4e48\u9020\u6210\u7684\uff0c\u5982\u4f55\u6392\u67e5\uff1f</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/c4923", 
        "name": "c4923", 
        "avatar": "https://cdn.v2ex.com/avatar/9178/ce70/613078_large.png?m=1708929372"
      }, 
      "url": "https://www.v2ex.com/t/1170081", 
      "title": "docker ps \u663e\u793a\u6b63\u5728\u8fd0\u884c\uff0c\u4f46\u662f\u670d\u52a1\u5df2\u7ecf down \u4e86", 
      "id": "https://www.v2ex.com/t/1170081", 
      "date_published": "2025-11-03T01:42:07+00:00", 
      "content_html": "<p>\u8fd9\u6bb5\u65f6\u95f4\u6211\u4eec\u8fd9\u8fb9\u670d\u52a1\u7ecf\u5e38\u9047\u5230\u4e00\u4e2a\u8be1\u5f02\u7684\u95ee\u9898\u3002</p>\n<p>\u670d\u52a1\u5728\u5bb9\u5668\u4e2d\u6b63\u5e38\u8fd0\u884c\u4e86 2-3 \u5468\uff0c\u671f\u95f4\u6ca1\u6709\u4eba\u7ba1\u8fc7\u3002\u67d0\u4e00\u5929\u540e\u7aef\u670d\u52a1\u7a81\u7136\u6302\u6389\u4e0d\u518d\u63d0\u4f9b\u670d\u52a1\u4e86\u3002</p>\n<p>\u6392\u67e5\u6027\u80fd\u76f8\u5173\uff0ccpu \uff0c\u78c1\u76d8\uff0c\u5185\u5b58\u90fd\u662f\u6b63\u5e38\u7684\uff0cdocker ps \u4e5f\u663e\u793a\u6b63\u5e38\u6ca1\u6709\u91cd\u542f\u4e4b\u7c7b\u7684\u60c5\u51b5\u3002<strong>\u4f46\u662f docker logs \u65e5\u5fd7\u505c\u6b62\u8f93\u51fa</strong>\u3002\u5fc5\u987b\u624b\u52a8 docker restart \u624d\u80fd\u6062\u590d\u670d\u52a1\uff0c\u6587\u4ef6\u63cf\u8ff0\u7b26\u6570\u91cf\u4e5f\u6b63\u5e38\uff0c\u5bb9\u5668\u65e5\u5fd7\u4e5f\u4e0d\u5b58\u5728\u5199\u6ee1\u7684\u60c5\u51b5\u3002\u56e0\u4e3a\u8981\u4f18\u5148\u6062\u590d\u670d\u52a1\u53ef\u7528\u6027\uff0c\u6240\u4ee5\u6ca1\u529e\u6cd5\u518d\u6392\u67e5\u66f4\u52a0\u7ec6\u81f4\u7684\u5185\u5bb9\uff0c\u6709\u6ca1\u6709\u5927\u4f6c\u9047\u5230\u8fc7\u7c7b\u4f3c\u7684\u95ee\u9898\uff1f\u6216\u8005\u8bf4\u6709\u5927\u4f6c\u80fd\u63d0\u4f9b\u4e00\u4e0b\u4e0b\u6b21\u51fa\u73b0\u7c7b\u4f3c\u60c5\u51b5\u7684\u6392\u67e5\u601d\u8def\u5417\uff1f</p>\n<p>docker \u7248\u672c\u662f 23.0.6</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/kfpenn", 
        "name": "kfpenn", 
        "avatar": "https://cdn.v2ex.com/gravatar/eca9d8dbcc246e5ce3548791f853c002?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1167631", 
      "date_modified": "2025-10-22T08:12:27+00:00", 
      "content_html": "<p>\u4eca\u5929\u7a81\u7136\u6536\u5230\u516c\u53f8\u7f51\u7ba1\u7684\u6d88\u606f\uff0c\u95ee\u6211\u7535\u8111\u662f\u4e0d\u662f\u6709\u88c5 Docker \uff0c\u5e76\u4e14\u8981\u6c42\u5378\u8f7d\u3002\u600e\u4e48\u7a81\u7136\u6709\u8fd9\u79cd\u8981\u6c42\uff1f Docker \u73b0\u5728\u6709\u4ec0\u4e48\u5b89\u5168\u6216\u8005\u7248\u6743\u95ee\u9898\u5417\uff1f</p>\n", 
      "date_published": "2025-10-22T08:04:52+00:00", 
      "title": "\u516c\u53f8\u7981\u7528 Docker", 
      "id": "https://www.v2ex.com/t/1167631"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/coderstory", 
        "name": "coderstory", 
        "avatar": "https://cdn.v2ex.com/avatar/3c9c/7f07/178817_large.png?m=1659344747"
      }, 
      "url": "https://www.v2ex.com/t/1167406", 
      "date_modified": "2025-10-21T10:49:35+00:00", 
      "content_html": "<pre><code>coderstory@DXP2800-NAS:/volume2/docker/med$ ls\ndocker-compose.yaml  emby  jellyfin  moviepilot-v2  pgsql  postgresql  v2raya\ncoderstory@DXP2800-NAS:/volume2/docker/med$  rm -rf pgsql/\ncoderstory@DXP2800-NAS:/volume2/docker/med$  rm -rf postgresql/\ncoderstory@DXP2800-NAS:/volume2/docker/med$ ls\ndocker-compose.yaml  emby  jellyfin  moviepilot-v2  v2raya\ncoderstory@DXP2800-NAS:/volume2/docker/med$ sudo docker compose -f docker-compose.yaml up \n -dWARN[0000] /volume2/docker/med/docker-compose.yaml: `version` is obsolete [+]\n Running 5/6 \u2714 Container v2raya      Running                                                                                                                                                                              0.0s  \u2714 Container mp-redis    Running                                                                                                                                                                              0.0s  \u2714 Container jellyfin    Running                                                                                                                                                                              0.0s  \u2714 Container emby        Running                                                                                                                                                                              0.0s  \u2714 Container watchtower  Running                                                                                                                                                                              0.0s  \u2838 Container postgres    Starting                                                                                                                                                                             0.3s Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting \"/volume2/docker/med/postgresql\" to rootfs at \"/var/lib/postgresql/data\": change mount propagation through procfd: open o_path procfd: open /volume2/@docker/overlay2/2d07030109595a75379f1bd753830c59b15a852610f6093fd681388e874060fa/merged/var/lib/postgresql/data: no such file or directory: unknown\n</code></pre>\n<p>\u9519\u8bef\u63d0\u793a\u7684\u76ee\u5f55\u662f\u81ea\u52a8\u751f\u6210\u7684\uff0c\u4e4b\u524d\u521b\u5efa\u7684\u6211\u90fd\u624b\u52a8\u5220\u9664\u4e86\u3002\u3002\u4e0d\u77e5\u9053\u4e3a\u4ec0\u4e48\u6302\u4e0d\u4e0a\u53bb</p>\n<pre><code class=\"language-bash\">coderstory@DXP2800-NAS:/volume2/docker/med$ uname -a\nLinux DXP2800-NAS 6.12.30+ #3 SMP PREEMPT_DYNAMIC Fri Sep  5 21:51:19 CST 2025 x86_64 GNU/Linux\ncoderstory@DXP2800-NAS:/volume2/docker/med$ cat /etc/os-release \nPRETTY_NAME=\"Debian GNU/Linux 12 (bookworm)\"\nNAME=\"Debian GNU/Linux\"\nVERSION_ID=\"12\"\nVERSION=\"12(bookworm)\"\nVERSION_CODENAME=bookworm\nID=debian\nHOME_URL=\"https://www.debian.org/\"\nSUPPORT_URL=\"https://www.debian.org/support\"\nBUG_REPORT_URL=\"https://bugs.debian.org/\"\nOS_VERSION=1.9.0.0075\ncoderstory@DXP2800-NAS:/volume2/docker/med$ docker --version\nDocker version 26.1.0, build 9714adc\ncoderstory@DXP2800-NAS:/volume2/docker/med$ \n</code></pre>\n<pre><code class=\"language-yaml\">\n# \u6839\u636e PT \u7ad9\u7ad9\u89c4\uff0cMP \u4f5c\u8005\u6587\u6863\uff0cANI-RSS \u4f5c\u8005\u58f0\u660e\uff0c\u4e25\u7981\u5728\u4e92\u8054\u7f51\u4efb\u4f55\u516c\u5f00\u573a\u5408\u8ba8\u8bba\u76f8\u5173\u5185\u5bb9\uff0c\u672c\u6a21\u677f\u540c\u4e0a\n# \u6839\u636e PT \u7ad9\u7ad9\u89c4\uff0cMP \u4f5c\u8005\u6587\u6863\uff0cANI-RSS \u4f5c\u8005\u58f0\u660e\uff0c\u4e25\u7981\u5728\u4e92\u8054\u7f51\u4efb\u4f55\u516c\u5f00\u573a\u5408\u8ba8\u8bba\u76f8\u5173\u5185\u5bb9\uff0c\u672c\u6a21\u677f\u540c\u4e0a\n# \u6839\u636e PT \u7ad9\u7ad9\u89c4\uff0cMP \u4f5c\u8005\u6587\u6863\uff0cANI-RSS \u4f5c\u8005\u58f0\u660e\uff0c\u4e25\u7981\u5728\u4e92\u8054\u7f51\u4efb\u4f55\u516c\u5f00\u573a\u5408\u8ba8\u8bba\u76f8\u5173\u5185\u5bb9\uff0c\u672c\u6a21\u677f\u540c\u4e0a\n# \u6839\u636e PT \u7ad9\u7ad9\u89c4\uff0cMP \u4f5c\u8005\u6587\u6863\uff0cANI-RSS \u4f5c\u8005\u58f0\u660e\uff0c\u4e25\u7981\u5728\u4e92\u8054\u7f51\u4efb\u4f55\u516c\u5f00\u573a\u5408\u8ba8\u8bba\u76f8\u5173\u5185\u5bb9\uff0c\u672c\u6a21\u677f\u540c\u4e0a\n# \u6839\u636e PT \u7ad9\u7ad9\u89c4\uff0cMP \u4f5c\u8005\u6587\u6863\uff0cANI-RSS \u4f5c\u8005\u58f0\u660e\uff0c\u4e25\u7981\u5728\u4e92\u8054\u7f51\u4efb\u4f55\u516c\u5f00\u573a\u5408\u8ba8\u8bba\u76f8\u5173\u5185\u5bb9\uff0c\u672c\u6a21\u677f\u540c\u4e0a\n# \u6839\u636e PT \u7ad9\u7ad9\u89c4\uff0cMP \u4f5c\u8005\u6587\u6863\uff0cANI-RSS \u4f5c\u8005\u58f0\u660e\uff0c\u4e25\u7981\u5728\u4e92\u8054\u7f51\u4efb\u4f55\u516c\u5f00\u573a\u5408\u8ba8\u8bba\u76f8\u5173\u5185\u5bb9\uff0c\u672c\u6a21\u677f\u540c\u4e0a\n# \u6839\u636e PT \u7ad9\u7ad9\u89c4\uff0cMP \u4f5c\u8005\u6587\u6863\uff0cANI-RSS \u4f5c\u8005\u58f0\u660e\uff0c\u4e25\u7981\u5728\u4e92\u8054\u7f51\u4efb\u4f55\u516c\u5f00\u573a\u5408\u8ba8\u8bba\u76f8\u5173\u5185\u5bb9\uff0c\u672c\u6a21\u677f\u540c\u4e0a\n# \u6839\u636e PT \u7ad9\u7ad9\u89c4\uff0cMP \u4f5c\u8005\u6587\u6863\uff0cANI-RSS \u4f5c\u8005\u58f0\u660e\uff0c\u4e25\u7981\u5728\u4e92\u8054\u7f51\u4efb\u4f55\u516c\u5f00\u573a\u5408\u8ba8\u8bba\u76f8\u5173\u5185\u5bb9\uff0c\u672c\u6a21\u677f\u540c\u4e0a\n# \u6839\u636e PT \u7ad9\u7ad9\u89c4\uff0cMP \u4f5c\u8005\u6587\u6863\uff0cANI-RSS \u4f5c\u8005\u58f0\u660e\uff0c\u4e25\u7981\u5728\u4e92\u8054\u7f51\u4efb\u4f55\u516c\u5f00\u573a\u5408\u8ba8\u8bba\u76f8\u5173\u5185\u5bb9\uff0c\u672c\u6a21\u677f\u540c\u4e0a\n##############################################\n# \u5982\u679c docker \u7f51\u7edc\u62c9\u53d6\u5931\u8d25\uff0c\u53ef\u4ee5\u7ed9\u955c\u50cf\u5730\u5740\u52a0\u4e0a\u52a0\u901f\u6e90\uff0c\u4f7f\u7528\u6587\u672c\u6279\u91cf\u66ff\u6362\u5373\u53ef\u5c06\u4e0b\u65b9\u4e2d\u62ec\u53f7\u7684\u5185\u5bb9\u6279\u91cf\u66ff\u6362\u6389\n# [images: ] \u2192 [images: docker.1ms.run/]\uff0c\u6ce8\u610f\"images: \"\u662f\u5e26\u7a7a\u683c\n##############################################\n# \u81ea\u52a8\u5316\u5a92\u4f53\u5e93\u7684\u5de5\u4f5c\u6d41\u7a0b\n# MP \u8d1f\u8d23\u8ba2\u9605\u641c\u522e PT \u7ad9\u5185\u7684\u8d44\u6e90\uff0c\u5c06\u79cd\u5b50\u4ee5\u53ca\u4e0b\u8f7d\u8def\u5f84(\u5bb9\u5668\u7684\u8def\u5f84)\uff0c\u53d1\u9001\u7ed9 QB/TR \u8fdb\u884c\u4e0b\u8f7d\n# \u5f53 MP \u68c0\u6d4b\u4e0b\u8f7d\u5b8c\u6bd5\u540e\uff0c\u5c06\u4f1a\u6839\u636e\u6574\u7406\u522e\u524a\u547d\u540d\u89c4\u5219\u8fdb\u884c\u5904\u7406\uff0c\u8f6c\u79fb\u5230\u5a92\u4f53\u5e93\u76ee\u5f55\u4e2d\n# \u8fd9\u6837\u4e00\u6765\uff0cPEJ \u68c0\u6d4b\u5230\u672c\u5730\u6709\u65b0\u7684\u5a92\u4f53\u5165\u5e93\uff0c\u5e76\u4e14\u672c\u5730\u5df2\u7ecf\u5b58\u5728\u522e\u524a\u6570\u636e\u53ef\u4ee5\u8bfb\u53d6\uff0c\u5373\u5b8c\u6210\u5165\u5e93\n# iyuu \u662f\u7528\u4e8e\u8f85\u52a9\u505a\u79cd\u7684\uff1b v2raya \u662f\u7528\u4e8e\u89e3\u51b3\u7f51\u7edc\u4e0d\u987a\u7545\u7684\u95ee\u9898\uff0c\u53ef\u4ee5\u4e0d\u641e\uff1b cookiecloud \u7528\u4e8e\u5b9a\u671f\u628a\u7535\u8111\u6d4f\u89c8\u5668\u7684 PT \u7ad9 cookie \u540c\u6b65\u5230 MP \u4e0a\n# QB \u9002\u5408\u4e0b\u79cd\uff0cTR \u9002\u5408\u505a\u79cd\n\n##############################################\n# \u91cd\u8981\u5185\u5bb9\uff0c\u786c\u94fe\u63a5\u53ea\u80fd\u591f\u5b58\u5728\u4e8e\u540c\u4e00\u4e2a\u5b58\u50a8\u6c60\u4e0a\n# \u91cd\u8981\u5185\u5bb9\uff0c\u786c\u94fe\u63a5\u53ea\u80fd\u591f\u5b58\u5728\u4e8e\u540c\u4e00\u4e2a\u5b58\u50a8\u6c60\u4e0a\n# \u91cd\u8981\u5185\u5bb9\uff0c\u786c\u94fe\u63a5\u53ea\u80fd\u591f\u5b58\u5728\u4e8e\u540c\u4e00\u4e2a\u5b58\u50a8\u6c60\u4e0a\n\n# /volume1/media\n#          |---/\u52a8\u6f2b\n#          |---/\u4e0b\u8f7d\n#          |\n#          |---/\u7535\u5f71\n#          |     |---/\u56fd\u4ea7\u7535\u5f71\n#          |     |---/\u6b27\u7f8e\u7535\u5f71\n#          |     |---/\u65e5\u97e9\u7535\u5f71\n#          |\n#          |---/\u7535\u89c6\u5267\n#                 |---/\u56fd\u4ea7\u7535\u89c6\u5267\n#                 |---/\u6b27\u7f8e\u7535\u89c6\u5267\n#                 |---/\u65e5\u97e9\u7535\u89c6\u5267\n\n# \u2460\uff1a/volume1/media\u2014\u2014\u2014\u2014\u2014\u2014media \u4e3a\u5171\u4eab\u6587\u4ef6\u5939\uff0c\u5b58\u50a8\u6c60\u9884\u8bbe\u4e3a\u7b2c 1 \u4e2a\u5b58\u50a8\u6c60\uff0c\u8bf7\u6839\u636e\u81ea\u5df1\u5b9e\u9645\u60c5\u51b5\u4fee\u6539 [\u8fd9\u662f\u5b9e\u9645\u8def\u5f84] \n# \u2461\uff1a/volume1/media/\u4e0b\u8f7d\u2014\u2014\u2014\u2014\u2014\u2014\u7528\u4e8e QB \u548c TR \u4e0b\u8f7d\uff0cMP \u4e2d\u8bbe\u7f6e\u5bf9\u5e94\u7684\u5bb9\u5668\u8def\u5f84/downloads \u7528\u4e8e\u4f20\u9012 [\u8fd9\u662f\u5b9e\u9645\u8def\u5f84] \n# \u2462\uff1a/volume1/media/\u7535\u5f71\uff1b/volume1/media/\u7535\u89c6\u5267\u2014\u2014\u2014\u2014\u2014\u2014\u7528\u4e8e\u5a92\u4f53\u5e93\u7684\u5206\u7c7b\u5b58\u653e\uff0c\u53ef\u6839\u636e\u81ea\u5df1\u9700\u8981\u589e\u6dfb [\u8fd9\u662f\u5b9e\u9645\u8def\u5f84] \n# \u2463\uff1a\u8bf7\u5728 MP \u8bbe\u7f6e\u4e2d\uff0c\u628a\u4e0b\u8f7d\u76ee\u5f55\u8bbe\u7f6e\u4e3a\u201c/meida/\u4e0b\u8f7d\u201d\uff1b\u628a \u7535\u5f71/\u7535\u89c6\u5267 \u7b49\u5206\u7c7b\u7684\u76ee\u5f55\u8bbe\u7f6e\u4ece\u201c/meida\u201d\u5f00\u59cb\u9009\u62e9 [\u8fd9\u662f\u5bb9\u5668\u8def\u5f84] \n# \u2464\uff1aMP \u548c QB,TR \u90fd\u4f7f\u7528\u540c\u4e00\u6761\u8def\u5f84\u6620\u5c04\u201c/meida/\u4e0b\u8f7d\u201d [\u5fc5\u987b\u5b8c\u5168\u4e00\u6837] \n# \u4e0d\u61c2\u53ef\u4ee5\u770b\u770b MP-01 \u548c MP-03 \u8fd9\u4e24\u5f20\u56fe\uff0cMP-02 \u662f\u6548\u679c\u56fe\n# \u2465\uff1a/volume1/media/\u52a8\u6f2b\u2014\u2014\u2014\u2014\u2014\u2014\u7528\u4e8e ani-rss \u52a8\u6f2b bt \u4e0b\u8f7d\uff0c\u81ea\u8eab\u5e26\u91cd\u547d\u540d\u6574\u7406\u529f\u80fd\uff0c\u522e\u524a\u529f\u80fd\u53ef\u4ee5\u7531 PEJ \u8d1f\u8d23\n# \u2466\uff1a\u6ce8\u610f\uff0c\u9700\u8981\u5728 ani-rss \u7684\u8bbe\u7f6e\u4e2d\uff0c\u5c06\u4e0b\u8f7d\u5730\u5740\u4fee\u6539\u4e3a/ani-rss\n\n##############################################\n# \u6ce8\u610f\u4e8b\u9879\n# \u672c\u6a21\u677f\u5305\u542b PLEX,EMBY,JF,QB,TR,MP,ANI-RSS,COOKIECLOUD,IYUU,V2RAYA,WATCHTOWER,PEERBANHELPER,VOCECHAT\n# \u5982\u679c\u8bbe\u7f6e\u4e86\u4f7f\u7528\u7f51\u7edc\u4ee3\u7406(\u4e0d\u4e00\u5b9a\u662f v2raya \uff0c\u53ef\u4ee5\u662f\u8f6f\u8def\u7531)\uff0c\u8bf7\u63d0\u524d\u542f\u7528\u5e76\u6fc0\u6d3b\u597d\u9b54\u6cd5\uff0c\u5426\u5219 EMBY,JF,MP \u65e0\u6cd5\u6b63\u5e38\u8fde\u63a5 TMDB \uff0cMP \u53ef\u80fd\u65e0\u6cd5\u6b63\u5e38\u4e0b\u8f7d\u6838\u5fc3\u6587\u4ef6\n# \u6a21\u677f\u9884\u8bbe\u4f7f\u7528\u7684\u7f51\u7edc\u4ee3\u7406\u4e3a v2raya \u7684 http \u7aef\u53e3 20171 \uff0c\u5982\u679c\u4f7f\u7528\u4e86\u522b\u7684\uff0c\u8bf7\u6839\u636e\u5b9e\u9645\u60c5\u51b5\u4fee\u6539\uff0c\u603b\u4e0d\u4f1a\u6709\u4eba\u8fde\u9b54\u6cd5\u90fd\u4e0d\u4f1a\u7528\u4e0d\uff1f\u4e0d\u4f1a\u5427\uff1f\u4e0d\u4f1a\u5427\uff1f\n# \u90e8\u5206\u53c2\u6570\u4e0d\u8bf4\u660e\uff0c\u5982\u679c\u60f3\u77e5\u9053\u6709\u4ec0\u4e48\u7528\uff0c\u53ef\u4ee5\u53c2\u8003\u5176\u4ed6\u7684\u6a21\u677f\n# \u6743\u9650\u5747\u8bbe\u7f6e\u4e3a root \u4ee5\u4fdd\u8bc1\u8bbf\u95ee\u4e0d\u4f1a\u51fa\u9519\uff0c\u6ce8\u91ca\u5185\u5bb9\u591a\u591a\u9605\u8bfb\n# \u5a92\u4f53\u5e93\u8def\u5f84\u8bf7\u6839\u636e\u5b9e\u9645\u60c5\u51b5\u4fee\u6539\n# \u5a92\u4f53\u5e93\uff0ciyuu \uff0ccookiecloud \u4f7f\u7528 bridge \uff1b\u5176\u4f59\u7edf\u4e00\u4f7f\u7528 host \uff0c\u9700\u8981\u6539\u53d8\u7aef\u53e3\u5c31\u53bb\u4fee\u6539\u53d8\u91cf\uff0c\u770b\u6ce8\u91ca\u8bf4\u660e\n# iyuu \u4f7f\u7528 host \u6a21\u5f0f\u4f1a\u5360\u7528 mariadb/mysql \u7684 3306 \u7aef\u53e3\uff0c\u6240\u4ee5\u4f7f\u7528 bridge\n# QB \u548c TR \u4f7f\u7528 host \uff0c\u53ea\u8981\u5bbf\u4e3b\u673a\u62e5\u6709 IPV6 \uff0c\u5373\u53ef\u8fde\u4e0a IPV6 \u4f20\u8f93\u6570\u636e\uff0c\u5982\u679c\u5bbf\u4e3b\u673a\u6ca1\u6709\uff0c\u8bf7\u68c0\u67e5\u7f51\u7edc\u73af\u5883\n\n# EMBY \u548c JF \u5728 [\u63a7\u5236\u53f0-\u9ad8\u7ea7] \u4e2d\u751f\u6210 [ API \u5bc6\u94a5] \uff0cMP \u9700\u8981\u7528\n# PLEX \u9700\u8981\u6ce8\u518c\u767b\u5f55\u751f\u6210\u767b\u5f55\u5bc6\u94a5\uff0c\u7528\u4e8e\u767b\u5f55\u4f7f\u7528\uff0c\u8bbe\u7f6e\u597d\u540e\uff0c\u6d4f\u89c8\u5668 F12-&gt;\u7f51\u7edc\uff0c\u4ece Plex \u8bf7\u6c42 URL \u4e2d\u83b7\u53d6\u7684 X-Plex-Token \uff0cMP \u9700\u8981\u7528\n\n# QB \u521d\u59cb\u5316\u8d26\u53f7\u4e3a admin \uff0c\u5bc6\u7801\u5728\u65e5\u5fd7\u4e2d\u67e5\u770b\n# QB \u53ef\u9009\u4fee\u6539\uff1a\u7528\u4e8e\u4f20\u5165\u8fde\u63a5\u7684\u7aef\u53e3\uff0c\u968f\u673a\u751f\u6210\u4e00\u4e2a\uff0c\u8bb0\u5f97\u770b\u7ad9\u89c4\uff1b\u5e76\u4e14\u5728\u8def\u7531\u5668\u4e0a\u505a\u597d\u7aef\u53e3\u6620\u5c04\uff0c\u5982\u679c\u6709\u516c\u7f51\u7684\u8bdd\n# QB \u5173\u95ed\uff1a\u542f\u7528 DHT (\u53bb\u4e2d\u5fc3\u5316\u7f51\u7edc) \u4ee5\u627e\u5230\u66f4\u591a\u7528\u6237\n# QB \u5173\u95ed\uff1a\u542f\u7528\u7528\u6237\u4ea4\u6362 (PeX) \u4ee5\u627e\u5230\u66f4\u591a\u7528\u6237\n# QB \u5173\u95ed\uff1a\u542f\u7528\u672c\u5730\u7528\u6237\u53d1\u73b0\u4ee5\u627e\u5230\u66f4\u591a\u7528\u6237\n# QB \u5173\u95ed\uff1a\u542f\u7528\u8de8\u7ad9\u8bf7\u6c42\u4f2a\u9020 (CSRF) \u4fdd\u62a4\n\n# TR \u9700\u8981\u628a\u6c49\u5316\u6587\u4ef6\u5b58\u653e\u5230\u5bf9\u5e94\u76ee\u5f55\uff0c\u770b\u6ce8\u91ca\u8bf4\u660e\n# TR \u4e0d\u6253\u5f00\uff1a\u542f\u7528\u968f\u673a\u7aef\u53e3\uff0c\u6216\u4f7f\u7528\u56fa\u5b9a\u7aef\u53e3\u3002\u7aef\u53e3\u53f7\u8bbe\u7f6e\u597d\u5e76\u4e14\u5728\u8def\u7531\u5668\u4e0a\u505a\u597d\u7aef\u53e3\u6620\u5c04\uff0c\u5982\u679c\u6709\u516c\u7f51\u7684\u8bdd\n# TR \u5173\u95ed\uff1a\u542f\u7528\u672c\u5730\u7528\u6237\u53d1\u73b0(LPD)\n# TR \u5173\u95ed\uff1a\u542f\u7528\u5e26\u5bbd\u7ba1\u7406(\u00b5TP)\n# TR \u5173\u95ed\uff1a\u542f\u7528\u5206\u5e03\u5f0f\u54c8\u5e0c\u8868(DHT)\n# TR \u5173\u95ed\uff1a\u542f\u7528\u7528\u6237\u4ea4\u6362\n\n# iyuu \u9700\u8981\u6ce8\u518c\u626b\u7801\u83b7\u53d6 token \uff0c\u521d\u59cb\u5316\u5b89\u88c5\u7b2c\u4e00\u6b65\u53ea\u9700\u8981\u8f93\u5165 token \u5373\u53ef\n\n# MP \u5982\u679c\u9047\u5230 cookiecloud \u8bbe\u7f6e\u6b63\u786e\u4f46\u662f\u65e0\u6cd5\u540c\u6b65\u6210\u529f\u7684\uff0c\u8bd5\u8bd5\u91cd\u542f\u51e0\u6b21\u518d\u53bb\u540c\u6b65\uff0c\u5b9e\u5728\u4e0d\u662f\uff0c\u624b\u52a8\u6dfb\u52a0\u5427\n# MP v2.0.7 \u53ca\u4ee5\u4e0a\u7248\u672c\uff0c\u5df2\u652f\u6301\u901a\u8fc7 UI \u8fdb\u884c\u7528\u6237\u8ba4\u8bc1\uff1a\u70b9\u51fb\u7528\u6237\u5934\u50cf -&gt; \u7528\u6237\u8ba4\u8bc1\uff0c\u65e0\u9700\u914d\u7f6e\u73af\u5883\u53d8\u91cf\uff0c\u6a21\u677f\u7ee7\u7eed\u4fdd\u7559\u539f\u6709\u7684\u8ba4\u8bc1\u53d8\u91cf\n\n# ANI-RSS \u7684\u7528\u6237\u540d\u548c\u5bc6\u7801\u5747\u4e3a admin\n\n# cookiecloud \u4f7f\u7528\u6559\u7a0b\uff1a https://post.smzdm.com/p/a905kd5p\n\n##############################################\n# \u955c\u50cf\u5730\u5740\n# https://hub.docker.com/r/linuxserver/plex\n# https://hub.docker.com/r/linuxserver/emby\n# https://hub.docker.com/r/nyanmisaka/jellyfin\n# https://hub.docker.com/r/linuxserver/qbittorrent\n# https://hub.docker.com/r/linuxserver/transmission\n# https://hub.docker.com/r/jxxghp/moviepilot\n# https://hub.docker.com/r/easychen/cookiecloud\n# https://hub.docker.com/r/iyuucn/iyuuplus-dev\n# https://hub.docker.com/r/mzz2017/v2raya\n# https://hub.docker.com/r/containrrr/watchtower\n# https://hub.docker.com/r/privoce/vocechat-server\n# https://hub.docker.com/_/redis\n# https://hub.docker.com/_/postgres\n\n##############################################\n# MP \u6587\u6863\n# https://github.com/jxxghp/MoviePilot\n# https://wiki.movie-pilot.org\n# MP \u63d2\u4ef6\n# https://wiki.movie-pilot.org/zh/plugin\n# PT \u73a9\u5bb6\u770b\u7ad9\u89c4\uff01\uff01\uff01 PT \u73a9\u5bb6\u770b\u7ad9\u89c4\uff01\uff01\uff01 PT \u73a9\u5bb6\u770b\u7ad9\u89c4\uff01\uff01\uff01\n\n# ani-rss \u6587\u6863\uff1a https://docs.wushuo.top\n\n# iyuu \u6587\u6863\uff1a https://doc.iyuu.cn/guide/getting-started\n\n# \u5a92\u4f53\u5e93\u89c4\u8303\u5316\u547d\u540d\u624b\u518c\uff08 PEJ \u901a\u7528\uff09\uff1a https://emby.media/support/articles/Home.html\n\n# peerbanhelper \u6587\u6863\uff1a https://github.com/PBH-BTN/PeerBanHelper\n\n# vocecha \u6587\u6863\uff1a https://doc.voce.chat/zh-cn\n\n##############################################\n# \u5404\u4e2a\u670d\u52a1\u7684 WebUI\n# plex            ip:32400\n# emby            ip:8096\n# jellyfin        ip:8097\n# qbittorrent     ip:8085\n# transmission    ip:9091\n# moviepilot      ip:55055\n# ani-rss         ip:7789\n# cookiecloud     ip:8188\n# peerbanhelper   ip:9898\n# iyuu            ip:8780\n# v2raya          ip:2017\n  # sock \u4ee3\u7406\u7aef\u53e3\uff1a20170\n  # http \u4ee3\u7406\u7aef\u53e3\uff1a20171\n  # http \u4ee3\u7406\u7aef\u53e3(\u5e26\u5206\u6d41\u89c4\u5219)\uff1a20172\n# watchtower      \u4e0d\u5b58\u5728\uff0c\u540e\u53f0\u81ea\u52a8\u66f4\u65b0\u5bb9\u5668\u955c\u50cf\n# vocechat        ip:3456\n# redis + pgsql   \u4e0d\u5b58\u5728 webui \uff0c\u53ea\u9700\u8981\u8ba9 mp \u94fe\u63a5\u5373\u53ef\n\n# \u5982\u679c\u8981\u4f7f\u7528 peerbanhelper \uff0cQB \u548c TR \u5fc5\u987b\u4f7f\u7528 host \u7f51\u7edc\u6a21\u5f0f\uff0c\u6a21\u677f\u9ed8\u8ba4\u4e3a host \u7f51\u7edc\u6a21\u5f0f\uff0c\u4e14\u5bf9 QB \u548c TR \u7684\u7248\u672c\u53f7\u6709\u8981\u6c42\uff0c\u6ce8\u610f\u67e5\u770b\u6587\u6863\n# redis \u548c pgsql \u5747\u4f7f\u7528 bridge \u7f51\u7edc\u6a21\u5f0f\uff0c\u4ec5\u63d0\u4f9b\u7ed9 MP \u4f7f\u7528\uff0c\u5982\u679c\u4f60\u6709\u5355\u72ec\u5df2\u7ecf\u90e8\u7f72\u597d\u7684 redis \u548c pgsql \u5bb9\u5668\uff0c\u61c2\u5f97\u5982\u4f55\u94fe\u63a5\u4e0a\uff0c\u81ea\u884c\u4fee\u6539\uff0c\u672c\u6a21\u677f\u5df2\u7ecf\u6574\u5408\u53f7\uff0c\u90e8\u7f72\u5373\u53ef\u4f7f\u7528\n# 2025-09-10\uff1aMP \u5df2\u7ecf\u652f\u6301\u5728 WebUI \u4e0a\u8fdb\u884c\u8ba4\u8bc1\uff0c\u56e0\u6b64\u5220\u9664\u6389\u8ba4\u8bc1\u90e8\u5206\uff0c\u540c\u65f6\uff0c\u90e8\u5206\u53d8\u91cf\u5728 compose \u4e2d\u5199\u4e86\uff0c\u5c31\u65e0\u6cd5\u5728 WebUI \u4e0a\u968f\u65f6\u4fee\u6539\uff0c\u56e0\u6b64\u4e5f\u5220\u6389\u4e86\n# 2025-09-10\uff1a\u672c\u6a21\u677f\u6539\u4e3a MP \u4f7f\u7528\u5e26\u6570\u636e\u5e93\u4e14\u5168\u65b0\u90e8\u7f72\u7684\u7248\u672c\uff0c\u5982\u9700\u539f\u6709\u6570\u636e\u5e93\u8fc1\u79fb\u5347\u7ea7\uff0c\u591a\u52a0\u4e00\u4e2a pgsql \u7a0d\u5fae\u4fee\u6539\u4e00\u4e0b\u8def\u5f84\u5373\u53ef\uff0c\u7eff\u8054 amd64 \u548c arm64 \u5b9e\u6d4b\u6ca1\u95ee\u9898\n\n##############################################\n\n---\nversion: \"3\"\n# \u6700\u540e\u7f16\u8f91\u65f6\u95f4\uff1a2025-09-10\nservices:\n##############################################\n#                                            #\n#         \u5a92\u4f53\u5e93\u90e8\u5206\uff0c\u5168\u9009/\u4e0d\u9009/\u9009\u5176\u4e00         #\n#                                            #\n##############################################\n\n\n\n##############################################\n\n  emby:\n    image: linuxserver/emby:latest\n    # \u955c\u50cf\u5730\u5740\uff0c\u5982\u9700\u6d4b\u8bd5\u7248\u8ffd\u65b0\uff0clatest \u66f4\u6539\u4e3a beta \uff0c\u4e0d\u533a\u5206\u8bbe\u5907\u67b6\u6784\n    # \u5982\u679c\u4f7f\u7528\u5f00\u5fc3\u7248\uff0c\u5c06\u955c\u50cf\u6539\u4e3a amilys/embyserver \uff0carm64v8 \u8bbe\u5907\u4f7f\u7528 amilys/embyserver_arm64v8\n    container_name: emby\n    hostname: emby\n    # privileged: true\n    devices:\n      - /dev/dri:/dev/dri\n    volumes:\n      - ./emby:/config\n      # \u914d\u7f6e\u6587\u4ef6\u76ee\u5f55\n      - /volume3/1TSSD/\u5f71\u97f3:/data\n      # \u5a92\u4f53\u5e93\u76ee\u5f55\uff0c\u53ef\u4ee5\u81ea\u5b9a\u4e49\uff0c\u53ef\u4ee5\u5199\u591a\u4e2a\n    environment:\n      - PUID=0\n      - PGID=0\n      - UMASK=022\n      - TZ=Asia/Shanghai\n\n      # \u4ee5\u4e0b\u662f\u4e3a EMBY \u6dfb\u52a0\u7f51\u7edc\u4ee3\u7406\uff0c\u81ea\u884c\u51c6\u5907\u597d\u9b54\u6cd5\uff0c\u5c06 IP \u6539\u4e3a NAS \u7684 IP \uff0c\u5982\u9700\u4f7f\u7528\uff0c\u53bb\u6389#\u53f7\u6ce8\u91ca\n      # emby \u63a8\u8350\u4e0d\u5199\uff0c\u800c\u662f\u5b89\u88c5\u795e\u533b\u63d2\u4ef6\uff1a https://github.com/sjtuross/StrmAssistant\n      - NO_PROXY=172.17.0.1,127.0.0.1,localhost\n      # \u4fdd\u6301\u9ed8\u8ba4\n      - ALL_PROXY=http://localhost:20171\n      - HTTP_PROXY=http://localhost:20171\n      # \u66f4\u6362\u4e3a\u81ea\u5df1\u7684 http \u4ee3\u7406\n      # \u5207\u8bb0\u8bbe\u7f6e\u597d V2raya \uff0c\u5982\u679c\u4f60\u6ca1\u6709\u914d\u7f6e\u9b54\u6cd5\u5c31\u6ce8\u91ca\u6389\n\n    network_mode: bridge\n    ports:\n      - 8096:8096\n    restart: unless-stopped\n\n##############################################\n\n  jellyfin:\n    image: nyanmisaka/jellyfin:latest\n    # \u955c\u50cf\u5730\u5740\uff0c\u65e0\u8111\u63a8\u8350\u4f7f\u7528 ny \u5927\u4f6c\u7684 JF \uff0c\u505a\u597d\u4e86\u5168\u90e8\u4fee\u6b63\u4f18\u5316\uff0c\u5f00\u7bb1\u5373\u7528  \n    # x86 \u8bbe\u5907\u9ed8\u8ba4\u7528 latest \uff0carm64v8 \u8bbe\u5907\u7528 latest-rockchip\n    container_name: jellyfin\n    hostname: jellyfin\n    # privileged: true\n    devices:\n      - /dev/dri:/dev/dri\n    volumes:\n      - ./jellyfin/config:/config\n      # \u914d\u7f6e\u6587\u4ef6\u76ee\u5f55\n      - /volume3/1TSSD/\u5f71\u97f3:/media\n      # \u5a92\u4f53\u5e93\u76ee\u5f55\uff0c\u53ef\u4ee5\u81ea\u5b9a\u4e49\uff0c\u53ef\u4ee5\u5199\u591a\u4e2a\n      - ./jellyfin/cache:/cache\n      # \u7f13\u5b58\u76ee\u5f55\n\n      # - /dev/shm:/config/transcodes\n      # \u4f7f\u7528\u5185\u5b58\u4f5c\u4e3a\u8f6c\u7801\u7f13\u51b2\u76ee\u5f55\uff0c\u63a8\u8350\u81f3\u5c11 8G \u624d\u4f7f\u7528\uff0c\u9ed8\u8ba4\u4e0d\u7528\n      # \u6548\u679c\u662f\uff0c\u786c\u4ef6\u8f6c\u7801\u7684\u65f6\u5019\uff0c\u4f1a\u5c06\u8f6c\u7801\u6587\u4ef6\u751f\u6210\u5728\u5185\u5b58\u4e0a\uff0c\u9000\u51fa\u64ad\u653e\u7684\u65f6\uff0c\u4f1a\u81ea\u52a8\u6e05\u7406\uff0c\u4f18\u70b9\u548c\u7f3a\u70b9\u90fd\u662f\u4e0d\u4fdd\u7559\u7f13\u51b2\u7684\u8f6c\u7801\u6587\u4ef6\n\n    environment:\n      - TZ=Asia/Shanghai\n\n      # \u4ee5\u4e0b\u662f\u4e3a JF \u6dfb\u52a0\u7f51\u7edc\u4ee3\u7406\uff0c\u81ea\u884c\u51c6\u5907\u597d\u9b54\u6cd5\uff0c\u5c06 IP \u6539\u4e3a NAS \u7684 IP \uff0c\u5982\u9700\u4f7f\u7528\uff0c\u53bb\u6389#\u53f7\u6ce8\u91ca\n      - NO_PROXY=172.17.0.1,127.0.0.1,localhost\n      # \u4fdd\u6301\u9ed8\u8ba4\n      - ALL_PROXY=http://localhost:20171\n      - HTTP_PROXY=http://localhost:20171\n      # \u66f4\u6362\u4e3a\u81ea\u5df1\u7684 http \u4ee3\u7406\n      # \u5207\u8bb0\u8bbe\u7f6e\u597d V2raya \uff0c\u5982\u679c\u4f60\u6ca1\u6709\u914d\u7f6e\u9b54\u6cd5\u5c31\u6ce8\u91ca\u6389\n\n    network_mode: bridge\n    ports:\n      - 8097:8096\n    restart: unless-stopped\n\n##############################################\n#                                            #\n#         \u4e0b\u8f7d\u5668\u90e8\u5206\uff0c\u5168\u9009/\u4e0d\u9009/\u9009\u5176\u4e00         #\n#                                            #\n##############################################\n \n\n##############################################\n\n \n\n##############################################\n#                                            #\n#       \u81ea\u52a8\u5316\u522e\u524a\u6574\u7406\u5de5\u5177\uff0c\u6839\u636e\u9700\u8981\u90e8\u7f72        #\n#                                            #\n##############################################\n\n \n\n##############################################\n\n  moviepilot-v2:\n    image: jxxghp/moviepilot-v2:latest\n    container_name: moviepilot-v2\n    hostname: moviepilot-v2\n    restart: unless-stopped\n    network_mode: host\n\n##############################################\n## \u7b2c\u4e00\u6b21\u8fd0\u884c\u65f6\uff0cMoviePilot \u4f1a\u4e0b\u8f7d\u5927\u91cf\u6587\u4ef6\u5230\u672c\u5730\uff0c\u8bf7\u5728\u7559\u610f\u65e5\u5fd7\u4e2d\u7684\u8fdb\u5ea6\uff0c\u5982\u679c\u6709\u4ec0\u4e48\u95ee\u9898\uff0c\u53ef\u4ee5\u5bfb\u627e\u7f51\u53cb\u6c42\u52a9\n    volumes:\n      - /var/run/docker.sock:/var/run/docker.sock:ro\n      # \u4f7f MP \u652f\u6301\u5185\u5efa\u7684\u91cd\u542f\u64cd\u4f5c\uff0c\u7528\u4e8e\u81ea\u52a8\u66f4\u65b0\u540e\u91cd\u542f\n      - ./moviepilot-v2/core:/moviepilot \n      ## \u7a0b\u5e8f\u4e3b\u76ee\u5f55\n      - ./moviepilot-v2/config:/config\n      ## \u914d\u7f6e\u76ee\u5f55\n      - /volume3/1TSSD/\u4e0b\u8f7d:/downloads\n      # \u9ed8\u8ba4\u4e0b\u8f7d\u76ee\u5f55\n      - /volume3/1TSSD/\u5f71\u97f3:/media\n      # MP \uff0cQB \uff0cTR \u7edf\u4e00\u7684\u4e0b\u8f7d\u76ee\u5f55\uff0c\u89c1\u4e0a\u76ee\u5f55\u7ed3\u6784\u8bf4\u660e\u7684\u2463\u2464\n\n      - ./qbittorrent/qBittorrent/BT_backup:/QB-BT\n      - ./transmission/torrents:/TR-BT\n      # \u7528\u4e8e\u81ea\u52a8\u8f6c\u79cd\u6240\u4f7f\u7528\u7684\u8def\u5f84\uff0c\u8bf7\u6839\u636e\u5b9e\u9645\u60c5\u51b5\u4fee\u6539\uff0c\u6a21\u677f\u4ec5\u4f9b\u53c2\u8003\uff0c\u5982\u4e0d\u9700\u8981\uff0c\u5219\u5220\u9664\u6389\n\n##############################################\n    environment:\n      - MOVIEPILOT_AUTO_UPDATE=true\n      # \u8bbe\u7f6e\u5bb9\u5668\u91cd\u542f\u65f6\u81ea\u52a8\u66f4\u65b0\uff0ctrue/release/dev/false \uff0c\u9ed8\u8ba4 release \uff0c\u63d2\u4ef6\u7684\u81ea\u52a8\u66f4\u65b0\u8981\u8bbe\u7f6e\u4e3a true\n      # \u9700\u8981\u80fd\u6b63\u5e38\u8fde\u63a5 Github \u6ce8\u610f\uff1a\u5982\u679c\u51fa\u73b0\u7f51\u7edc\u95ee\u9898\u53ef\u4ee5\u914d\u7f6e PROXY_HOST\n      - API_TOKEN=1234567890123456\n      # API \u5bc6\u94a5\uff0cV1 \u7248\u672c\u9ed8\u8ba4\u4e3a moviepilot \uff0cV2 \u7248\u672c\u9700\u8981\u624b\u52a8\u914d\u7f6e\u4e3a\u5927\u4e8e\u7b49\u4e8e 16 \u4e2a\u5b57\u7b26\u7684\u590d\u6742\u5b57\u7b26\u4e32\n      # \u5982\u914d\u7f6e\u4e0d\u7b26\u5408\u8981\u6c42\u5c06\u4f1a\u5f3a\u5236\u91cd\u65b0\u751f\u6210\uff0c\u53ef\u5728\u9996\u6b21\u542f\u52a8\u7684\u542f\u52a8\u65e5\u5fd7\u6216 env \u914d\u7f6e\u6587\u4ef6\u4e2d\u67e5\u770b\u6700\u65b0\u7684\u503c\n      # \u5728\u5a92\u4f53\u670d\u52a1\u5668 Webhook \u3001\u5fae\u4fe1\u56de\u8c03\u7b49\u5730\u5740\u914d\u7f6e\u4e2d\u9700\u8981\u52a0\u4e0a ?token= \u8be5\u503c\n      \n      - NGINX_PORT=55055\n      # WebUI \u670d\u52a1\u7aef\u53e3\uff0c\u9ed8\u8ba4\u4e3a 3000 \uff0c\u9884\u8bbe\u4e3a 55055 \uff0c\u53ef\u81ea\u884c\u4fee\u6539\n      - PORT=55056\n      # API \u7aef\u53e3\uff0c\u9ed8\u8ba4\u4e3a 3001 \uff0c\u9884\u8bbe\u4e3a 55056 \uff0c\u53ef\u81ea\u884c\u4fee\u6539\n      \n      - SUPERUSER=admin\n      # \u8d85\u7ea7\u7ba1\u7406\u8005\u7528\u6237\u540d\uff0c\u9ed8\u8ba4\u4e3a admin \uff0c\u53ef\u5728 MP \u5185\u4fee\u6539\uff0c\u521d\u6b21\u5b89\u88c5\u540e\u5931\u6548\n      # \u5bc6\u7801\u5728\u65e5\u5fd7\u91cc\uff0c\u53ea\u4f1a\u5728\u7b2c\u4e00\u6b21\u90e8\u7f72\u51fa\u73b0\uff0c\u5982\u679c\u5fd8\u8bb0\uff0c\u53ef\u4ee5\u6587\u672c\u5f62\u5f0f\u6253\u5f00 /config/logs/moviepilot.log \u8be5\u6587\u4ef6\uff0c\u67e5\u770b\u65e5\u5fd7\u83b7\u53d6\n      # \u5982\u679c\u975e\u521d\u59cb\u5bc6\u7801\u5fd8\u8bb0\u4e86\uff0c\u5f97\u5220\u9664 pgsql \u7684\u6240\u6709\u6587\u4ef6\uff0c\u7136\u540e\u91cd\u65b0\u914d\u7f6e\uff0c\u6ce8\u610f\u67e5\u770b\uff0c\u53ef\u5728 MP \u5185\u4fee\u6539\n\n      - TZ=Asia/Shanghai\n      # \u65f6\u533a\n\n      # - MOVIE_RENAME_FORMAT={{title}}{% if year %} ({{year}}){% endif %}/{{title}}.{{original_name}}\n      # - TV_RENAME_FORMAT={{title}}{% if year %} ({{year}}){% endif %}/S0{{season}}/{{original_name}}\n      # \u7535\u5f71\u548c\u7535\u89c6\u5267\u91cd\u547d\u540d\u683c\u5f0f\uff0c\u4e2a\u4eba\u81ea\u7528\uff0c\u9ed8\u8ba4\u4e0d\u4f7f\u7528\uff0c\u4ec5\u4f5c\u8bb0\u5f55\n\n########################################\n#### \u6570\u636e\u5e93 ####\n# \u4e0d\u9700\u8981\u4fee\u6539\uff0c\u7167\u6284\n\n      ### \u5982\u679c\u4f60\u6709\u4e00\u4e2a pgsql \u7684\u5bb9\u5668\uff0c\u61c2\u5f97\u4f7f\u7528\u65b9\u6cd5\uff0c\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u60c5\u51b5\u586b\u5199 ###\n      - DB_TYPE=postgresql\n      - DB_POSTGRESQL_HOST=localhost\n      - DB_POSTGRESQL_PORT=55053\n      # pgsql \u6570\u636e\u5e93\u7684\u8bbf\u95ee\u7aef\u53e3\uff0c\u672c\u6a21\u677f pgsql \u7684\u7aef\u53e3\u9884\u8bbe\u4e3a 55053\n      - DB_POSTGRESQL_DATABASE=moviepilot\n      - DB_POSTGRESQL_USERNAME=moviepilot\n      - DB_POSTGRESQL_PASSWORD=moviepilot\n      # pgsql \u6570\u636e\u5e93\u7684\u5b50\u6570\u636e\u5e93\u7684\u540d\u5b57\u3001\u8d26\u53f7\u3001\u5bc6\u7801\uff0c\u7edf\u4e00\u4e3a moviepilot\n\n      ### \u5982\u679c\u4f60\u6709\u4e00\u4e2a redis \u7684\u5bb9\u5668\uff0c\u61c2\u5f97\u4f7f\u7528\u65b9\u6cd5\uff0c\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u60c5\u51b5\u586b\u5199 ###\n      - CACHE_BACKEND_TYPE=redis\n      - CACHE_BACKEND_URL=redis://:moviepilot@localhost:55054\n      # \u8fde\u63a5 redis \uff0c\u672c\u6a21\u677f redis \u7684\u8bbf\u95ee\u7aef\u53e3\u9884\u8bbe\u4e3a 55054\n    depends_on:\n      postgresql:\n        condition: service_healthy\n      mp-redis:\n        condition: service_healthy\n    # \u5173\u8054 pgsql \u548c redis \uff0c\u7167\u6284\n\n##############################################\n#                                            #\n#         \u7ed9 MP \u914d\u4e0a\u6570\u636e\u5e93\uff0c\u6a21\u677f\u5305\u542b\uff0c\u5fc5\u987b        #\n#                                            #\n##############################################\n# \u4e0d\u9700\u8981\u4fee\u6539\uff0c\u7167\u6284\n\n  mp-redis:\n    image: redis:latest\n    container_name: mp-redis\n    hostname: mp-redis\n    command: redis-server --save 600 1 --requirepass moviepilot\n    # \u6700\u540e\u4e00\u4e32\u5b57\u7b26\u4e3a redis \u7684\u5bc6\u7801\uff0c\u9884\u8bbe\u4e3a moviepilot\n    volumes:\n      - ./moviepilot-v2/redis:/data\n      # \u6570\u636e\u76ee\u5f55\n    network_mode: bridge\n    # \u6a21\u677f\u9884\u8bbe\u4f7f\u7528 bridge \u7f51\u7edc\u6a21\u5f0f\uff0c\u5982\u679c\u61c2\u5f97\u4f7f\u7528\u65b9\u6cd5\uff0c\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u60c5\u51b5\u6765\u4fee\u6539\n    ports:\n      - 55054:6379/tcp\n      # \u6ce8\u610f\uff1a\u5e76\u4e0d\u5b58\u5728 WebUI \uff0c\u53ea\u9700\u8981\u901a\u8fc7 IP:PORT \u8c03\u7528\u5373\u53ef\uff0c\u6a21\u677f\u9884\u8bbe\n    restart: unless-stopped\n    healthcheck:\n      test: [\"CMD\", \"redis-cli\", \"--raw\", \"incr\", \"ping\"]\n      interval: 10s\n      timeout: 5s\n      retries: 5\n\n  postgresql:\n    image: postgres\n    container_name: postgres\n    hostname: postgres\n    volumes:\n      - ./postgresql:/var/lib/postgresql/data\n      # \u6570\u636e\u76ee\u5f55\n    environment:    \n      - POSTGRES_DB=moviepilot\n      - POSTGRES_USER=moviepilot\n      - POSTGRES_PASSWORD=moviepilot\n      # \u9884\u8bbe\u65b0\u5efa\u4e00\u4e2a\u5b50\u6570\u636e\u5e93\uff0c\u5b50\u8d26\u53f7\u53ca\u5176\u5bc6\u7801\uff0c\u7edf\u4e00\u4e3a moviepilot\n    network_mode: bridge\n    ports:\n      - 55053:5432/tcp\n    restart: unless-stopped\n    healthcheck:\n      test: [\"CMD-SHELL\", \"pg_isready -U moviepilot -d moviepilot\"]\n      interval: 10s\n      timeout: 5s\n      retries: 5\n\n##############################################\n#                                            #\n#          \u5176\u4ed6\u8f85\u52a9\u5de5\u5177\uff0c\u6839\u636e\u9700\u8981\u90e8\u7f72          #\n#                                            #\n##############################################\n  # \u81ea\u52a8\u66f4\u65b0\u5bb9\u5668\n  watchtower:\n    image: containrrr/watchtower:latest\n    container_name: watchtower\n    hostname: watchtower\n    network_mode: host\n    # \u5e76\u4e0d\u5b58\u5728\u7aef\u53e3\uff0c\u53ea\u662f\u51cf\u5c11\u65b0\u589e\u7f51\u7edc\n    volumes:\n      - /var/run/docker.sock:/var/run/docker.sock\n      # docker \u6838\u5fc3\n    environment:\n      - WATCHTOWER_CLEANUP=true\n      # \u66f4\u65b0\u540e\u79fb\u9664\u65e7\u7684\u955c\u50cf\n      - TZ=Asia/Shanghai\n    restart: unless-stopped\n\n  v2raya:\n    image: mzz2017/v2raya:latest\n    container_name: v2raya\n    hostname: v2raya\n    environment:\n      - V2RAYA_LOG_FILE=/tmp/v2raya.log\n      - V2RAYA_V2RAY_BIN=/usr/local/bin/v2ray\n    volumes:\n      - ./v2raya:/etc/v2raya\n      # \u914d\u7f6e\u6587\u4ef6\u76ee\u5f55\n      - /etc/resolv.conf:/etc/resolv.conf\n      # \u7167\u6284\uff0c\u8e29\u70b9\u4e86\uff0c\u6709\u8be5\u6587\u4ef6\u5b58\u5728\n    network_mode: bridge\n    # \u7531\u4e8e\u4e66\u5199\u6709\u4e0d\u540c\u65b9\u5f0f\uff0c\u8fd9\u91cc\u7edf\u4e00\u91c7\u7528 bridge \uff0c\u4f7f\u7528\u4e0d\u652f\u6301\u900f\u660e\u4ee3\u7406\u7684\u6a21\u677f\uff0c\u5982\u679c\u4f60\u6e05\u695a\u5982\u4f55\u4f7f\u7528\uff0c\u5219\u81ea\u884c\u4fee\u6539\n    # \u4f60\u76f4\u63a5\u5199 \u670d\u52a1\u5668\u7684 IP:[201710-20172] \u8fdb\u884c\u8bbf\u95ee\uff0c\u4f8b\u5982 emby/JF \u53d8\u91cf\u4e2d\u7684\u7f51\u7edc\u4ee3\u7406\u53c2\u6570\n    ports:\n      - 2017:2017/tcp\n      # WebUI \u7aef\u53e3\uff1a2017\n      - 20170-20172:20170-20172/tcp\n      # sock \u4ee3\u7406\u7aef\u53e3\uff1a20170\n      # http \u4ee3\u7406\u7aef\u53e3\uff1a20171\n      # http \u4ee3\u7406\u7aef\u53e3(\u5e26\u5206\u6d41\u89c4\u5219)\uff1a20172\n    restart: unless-stopped\n</code></pre>\n", 
      "date_published": "2025-10-21T10:46:12+00:00", 
      "title": "Docker Compose \u521b\u5efa\u5bb9\u5668\u5b9e\u4f8b\u62a5\u9519", 
      "id": "https://www.v2ex.com/t/1167406"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/raw0xff", 
        "name": "raw0xff", 
        "avatar": "https://cdn.v2ex.com/gravatar/4507d3d0fb4c3523c9a2f50f88c7f6c7?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1161832", 
      "title": "macos \u4e0b\u4f7f\u7528 orbstack \u5982\u4f55\u624d\u80fd\u4e0d\u6302\u8f7d\u76ee\u5f55\uff1f", 
      "id": "https://www.v2ex.com/t/1161832", 
      "date_published": "2025-09-25T10:33:21+00:00", 
      "content_html": "<p>\u76ee\u7684\u662f\u521b\u5efa\u4e00\u4e2a linux \u5bb9\u5668\u53ef\u4ee5\u5728\u91cc\u9762\u5b89\u5168\u7684\u201c\u80e1\u4f5c\u975e\u4e3a\u201d\uff0c\u5404\u79cd\u5b9e\u9a8c\u3002\u4f46\u662f orb -m ubuntu \u8fdb\u5165\u5230\u5bb9\u5668\u540e\u53ef\u4ee5\u8fdb\u5165\u5230 Mac \u6240\u6709\u7684\u6587\u4ef6\u5939\uff0c\u4e0e\u5bbf\u4e3b\u673a\u6743\u9650\u76f8\u540c\u3002\u8fd9\u53ef\u600e\u6562\u80e1\u4f5c\u975e\u4e3a\uff1f</p>\n<p>\u8bf7\u95ee\u6709\u6ca1\u6709\u5176\u4ed6\u53ef\u884c\u7684\u65b9\u6848\u6216\u8005\u5176\u4ed6\u8f6f\u4ef6\uff1f \u5c1d\u8bd5\u4e86\u4f7f\u7528\u4ec5\u9650\u5171\u4eab\u7528\u6237\u6267\u884c orb \uff0c\u672a\u9042:(</p>\n<p>docker desktop \u592a\u91cd\u4e86\u3002</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/future0906", 
        "name": "future0906", 
        "avatar": "https://cdn.v2ex.com/gravatar/5c1b5fcf590276cc751706367c67063d?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1161554", 
      "title": "Docker \u955c\u50cf\u7684 UID\u3001GID \u7ba1\u7406\u90fd\u8fd9\u4e48\u9634\u95f4\u7684\u4e48\uff1f", 
      "id": "https://www.v2ex.com/t/1161554", 
      "date_published": "2025-09-24T07:57:49+00:00", 
      "content_html": "\u6700\u8fd1\u5728\u6574\u7406 Homelab \u91cc\u9762 NAS \u7684\u6743\u9650\uff0c\u4ee5\u524d\u90fd\u6ca1\u592a\u5173\u6ce8\u3002\u91cc\u9762\u7684 UID \u548c GID \u7684\u7ba1\u7406\u7b80\u76f4\u4e94\u82b1\u516b\u95e8\u3002<br /><br />1. \u6709\u7684\u5728 Dockerfile \u91cc\u9762\u6307\u5b9a UID \u4e3a ARG \u3002<br />2. \u6709\u7684\u5199\u6b7b\u3002<br />3. \u6709\u7684\u73af\u5883\u53d8\u91cf\u53ef\u4ee5\u6539\u3002<br />4. \u6709\u7684\u76f4\u63a5 root \u4e00\u628a\u68ad\u3002<br /><br />\u5bf9\u4e8e 3 \uff0c\u4e00\u822c\u6765\u8bf4\u662f\u5728\u73af\u5883\u53d8\u91cf\u7ed9 PUID \u3001UID \u4e4b\u7c7b\uff0c\u8fd9\u7c7b\u8fd8\u6bd4\u8f83\u65b9\u4fbf\u3002<br />\u5bf9\u4e8e 4 \u7684\u8bdd\u5176\u5b9e\u4e5f\u8fd8\u597d\uff0c\u53ea\u8981\u4e0d\u6307\u5b9a USER \uff0c\u5728 Compose \u91cc\u9762\u7528 user: &lt;uid:gid&gt;\u8fd9\u6837\u6307\u5b9a<br />\u5bf9\u4e8e 1 \uff0c2 \u662f\u771f\u7684\u592a\u96be\u4e86\u3002\u8981\u4e48\u5c31\u6539 Dockerfile \uff0c\u53cd\u6b63\u90fd\u8981\u81ea\u5df1 build \u3002\u597d\u4e00\u70b9\u7684\u52c9\u5f3a\u80fd\u5728 Compose \u91cc\u9762\u5199\u4e2a InlineDockerfile \uff0c\u624b\u52a8\u6539\u4e00\u4e0b\uff0c\u590d\u6742\u4e00\u70b9\u7684\u955c\u50cf\u9b3c\u77e5\u9053\u6709\u591a\u5c11\u6587\u4ef6\u7684 owner \u662f\u539f\u6765\u7684\u8d26\u53f7\uff1f<br /><br />\u867d\u7136\u6211\u77e5\u9053\u5176\u5b9e\u4e0d\u6539\u597d\u50cf\u6ca1\u6709\u5565\u5173\u7cfb\uff0c**\u4f46\u662f\u770b\u5230 ls \u548c ps \u65f6\u5019\u7684\u6df7\u4e71\u7684\u7528\u6237\u540d\uff0c\u5f3a\u8feb\u75c7\u771f\u7684\u96be\u7ef7\u3002**<br /><br />\u6211\u770b\u6587\u6863\u4f3c\u4e4e\u63d0\u4f9b subuid \u3001UserIdMap \u4e4b\u7c7b\u7684\u624b\u6bb5\uff0c\u4f46\u662f\u7f51\u4e0a\u8ba8\u8bba\u7684\u4eba\u51e0\u4e4e\u6ca1\u6709\uff0c\u662f\u5927\u5bb6\u7684\u4e0d\u5728\u610f\u5417\uff1f"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/liuliuliuliu", 
        "name": "liuliuliuliu", 
        "avatar": "https://cdn.v2ex.com/avatar/3ae7/24e3/631769_large.png?m=1740391473"
      }, 
      "url": "https://www.v2ex.com/t/1160324", 
      "date_modified": "2025-09-18T17:48:54+00:00", 
      "content_html": "\u6211\u5f53\u524d\u6709\u670d\u52a1 A \u548c B \uff0c\u4ee5\u53ca Traefik \uff0c\u4ed6\u4eec\u4e09\u4e2a\u90fd\u8dd1\u5728\u540c\u4e00\u53f0\u673a\u5668\u7684 docker \u91cc\u3002<br />A \u548c B \u90fd\u901a\u8fc7 Traefik \u8fdb\u884c\u4e86\u53cd\u4ee3\u4ee5\u53ca\u7ed1\u5b9a\u4e86\u57df\u540d <a target=\"_blank\" href=\"http://A.example.com\" rel=\"nofollow noopener\">A.example.com</a> \u548c <a target=\"_blank\" href=\"http://B.example.com\" rel=\"nofollow noopener\">B.example.com</a> \u5e76\u8fdb\u884c\u4e86\u516c\u7f51\u89e3\u6790<br />\u73b0\u5728\u7684\u95ee\u9898\u662f\uff1a<br />\u5bb9\u5668 A \u5185\u65e0\u6cd5\u901a\u8fc7\u57df\u540d\u8bbf\u95ee\u5230 B \uff0ccurl -v <a target=\"_blank\" href=\"http://B.example.com\" rel=\"nofollow noopener\">B.example.com</a> \u65f6\u8fd4\u56de\u5982\u4e0b\uff1a<br />```<br />* Host <a target=\"_blank\" href=\"http://B.example.com:443\" rel=\"nofollow noopener\">B.example.com:443</a> was resolved.<br />* IPv6: (none)<br />* IPv4: (\u670d\u52a1\u5668\u7684\u516c\u7f51 IP)<br />*   Trying (\u670d\u52a1\u5668\u7684\u516c\u7f51 IP):443...<br />* connect to (\u670d\u52a1\u5668\u7684\u516c\u7f51 IP) port 443 from 172.22.0.6 port 53088 failed: Operation timed out<br />* Failed to connect to <a target=\"_blank\" href=\"http://B.example.com\" rel=\"nofollow noopener\">B.example.com</a> port 443 after 130394 ms: Could not connect to server<br />* closing connection #0<br />curl: (28) Failed to connect to <a target=\"_blank\" href=\"http://B.example.com\" rel=\"nofollow noopener\">B.example.com</a> port 443 after 130394 ms: Could not connect to server<br />```<br />\u5bbf\u4e3b\u673a\u6267\u884c curl -v <a target=\"_blank\" href=\"http://B.example.com\" rel=\"nofollow noopener\">B.example.com</a> \u662f\u6ca1\u95ee\u9898\u7684\u3002<br /><br />\u6211\u6ca1\u592a\u60f3\u660e\u767d\u4e3a\u4ec0\u4e48\u5bb9\u5668\u5185\u65e0\u6cd5\u901a\u8fc7\u516c\u7f51\u57df\u540d\u8bbf\u95ee\uff1f<br /><br />\u95ee\u4e86 cursor \u4ed6\u4e5f\u6ca1\u641e\u660e\u767d\u2026\u2026", 
      "date_published": "2025-09-18T13:02:03+00:00", 
      "title": "\u8bf7\u6559\u4e00\u4e2a Docker/Traefik \u7684\u7f51\u8def\u95ee\u9898", 
      "id": "https://www.v2ex.com/t/1160324"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/YanSeven", 
        "name": "YanSeven", 
        "avatar": "https://cdn.v2ex.com/avatar/3f22/feff/383743_large.png?m=1775465214"
      }, 
      "url": "https://www.v2ex.com/t/1159998", 
      "date_modified": "2025-09-18T02:26:23+00:00", 
      "content_html": "\u8fd8\u662f\u4e3b\u8981\u662f\u7801\u519c\u81ea\u6d4b\u7528\u7528", 
      "date_published": "2025-09-17T09:24:14+00:00", 
      "title": "docker compose \u5728\u751f\u4ea7\u4e0a\u7528\u7684\u591a\u5417\uff0c\u5c0f\u89c4\u6a21", 
      "id": "https://www.v2ex.com/t/1159998"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/vergilgao", 
        "name": "vergilgao", 
        "avatar": "https://cdn.v2ex.com/avatar/5340/d08e/495902_large.png?m=1592825829"
      }, 
      "url": "https://www.v2ex.com/t/1155756", 
      "date_modified": "2025-08-29T12:53:40+00:00", 
      "content_html": "<p>\u6211\u73b0\u5728\u662f\u7528 Fedora \u90e8\u7f72 podman\n\u548c docker \u6bd4\uff0cpodman \u5e26\u6765\u4e86</p>\n<ul>\n<li>\u53ef\u56fa\u5b9a mac \u5730\u5740\uff0c\u901a\u8fc7 dhcp \u83b7\u53d6 ip (netavark)</li>\n<li>\u4f7f\u7528 systemd \u7ba1\u7406\u5bb9\u5668 daemon (quadlet)</li>\n<li>\u53ef\u81ea\u52a8\u62c9\u53d6\u66f4\u65b0\u955c\u50cf (quadlet)</li>\n<li>\u5b8c\u5907\u7684 rootless \u5bb9\u5668\u5316\u652f\u6301</li>\n<li>nftables \u9632\u706b\u5899\u652f\u6301\n\u6211\u662f\u76f4\u63a5\u5199 quadlet \u914d\u7f6e\u6587\u4ef6</li>\n</ul>\n<pre><code>[Unit]\nDescription=mqtt broker server\nAfter=network-online.target\nWants=network-online.target\nBefore=shutdown.target\n\n[Container]\nHostName=mqtt-broker\nAutoUpdate=registry\nImage=docker.io/eclipse-mosquitto:latest\nNetwork=macvlan.network\nPodmanArgs=--mac-address XX:XX:XX:XX:XX:XX\nVolume=/srv/docker/root/volumes/mqtt/data:/mosquitto/data\nVolume=/srv/docker/root/volumes/mqtt/config:/mosquitto/config\nVolume=/srv/docker/root/volumes/mqtt/log:/mosquitto/log\n\n[Service]\nRestart=always\n\n[Install]\nWantedBy=multi-user.target\n</code></pre>\n<p>\u7136\u540e\u5bb9\u5668\u5c31\u4ee5\u4e00\u4e2a systemd \u7684\u670d\u52a1\u7684\u5f62\u5f0f\u8fd0\u884c\u8d77\u6765\u4e86\u3002</p>\n", 
      "date_published": "2025-08-29T04:27:37+00:00", 
      "title": "2025 \u5e74\u4e86\uff0c\u611f\u89c9 podman \u5df2\u7ecf\u6bd4 docker \u597d\u7528\u592a\u591a\u4e86\uff0c\u5c31\u5dee\u4e00\u4e2a\u6740\u624b\u7ea7\u7684 GUI \u914d\u7f6e\u4e86", 
      "id": "https://www.v2ex.com/t/1155756"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/1800x", 
        "name": "1800x", 
        "avatar": "https://cdn.v2ex.com/gravatar/fd87758cc305c803caa7b515d4f1e836?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1154517", 
      "title": "ttl.sh \u88ab\u963f\u91cc\u505a\u6389\u4e86\uff0c\u600e\u4e48\u529e\uff1f", 
      "id": "https://www.v2ex.com/t/1154517", 
      "date_published": "2025-08-23T23:26:20+00:00", 
      "content_html": "<a target=\"_blank\" href=\"http://ttl.sh\" rel=\"nofollow noopener\">ttl.sh</a> \u662f\u4e34\u65f6\u7684\u955c\u50cf\u4ed3\u5e93<br /><br />\u4e4b\u524d\u4e00\u76f4\u5728\u672c\u5730\u628a\u955c\u50cf push \u5230 <a target=\"_blank\" href=\"http://ttl.sh\" rel=\"nofollow noopener\">ttl.sh</a> \uff0c\u518d\u5728\u963f\u91cc\u4e91\u670d\u52a1\u5668 pull<br />\u73b0\u5728\u963f\u91cc\u7cfb\u662f\u8d8a\u6765\u8d8a\u4e0b\u4f5c<br />\u6628\u5929\u53d1\u73b0\u4ece <a target=\"_blank\" href=\"http://ttl.sh\" rel=\"nofollow noopener\">ttl.sh</a> pull \u62a5\u9519\u4e86\uff1a<br />error pulling image configuration: download failed after attempts=6: read tcp 172.18.35.136:54766-&gt;142.250.217.91:443: read: connection reset by peer<br />\u672c\u5730 push \u548c pull \u90fd ok<br /><br />\u6709\u6ca1\u6709\u597d\u7684\u89e3\u51b3\u65b9\u6848\u6216\u66ff\u4ee3\u65b9\u6848\uff1f"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/cmos", 
        "name": "cmos", 
        "avatar": "https://cdn.v2ex.com/avatar/dd9d/8f79/520237_large.png?m=1758633378"
      }, 
      "url": "https://www.v2ex.com/t/1153902", 
      "date_modified": "2025-08-21T07:32:21+00:00", 
      "content_html": "<ul>\n<li>\u4e3a\u4e86\u5f00\u53d1/\u6d4b\u8bd5\u4e00\u81f4\u6027\uff0c\u4f7f\u7528 Docker \u5b89\u88c5 MySQL \u3001Nginx \uff0c\u662f\u6b63\u5e38\u7684\u3002</li>\n<li>\u7cfb\u7edf\u5e9e\u6742\u3001\u7e41\u7410\uff0c\u4e0d\u5bb9\u6613\u90e8\u7f72\uff0c\u7528 docker \u662f\u9ad8\u6548\u3001\u7a33\u5b9a\u7684\u3002</li>\n</ul>\n<p><code>openlist</code>\u8fd9\u7c7b\u65e0\u4f9d\u8d56\u7684\u5355\u6587\u4ef6\u7a0b\u5e8f\uff0c\u7528<code>docker</code>\u90e8\u7f72\u662f\u4e3a\u4e86\u4ec0\u4e48\uff1f\u4e0d\u5e94\u8be5\u9075\u5faa FHS \u89c4\u8303\uff0c\u5b89\u88c5\u5230<code>/opt/openlist</code>\u5e76\u4f7f\u7528<code>systemd</code>\u7ba1\u7406\u5417\uff1f</p>\n<p>\u4f46\u662f\u6211\u5728\u5b9e\u9645\u63a5\u89e6\u4e2d\u53d1\u73b0\uff0c\u4e3a\u4e86<code>MySQL/Nginx</code>\u6027\u80fd\uff0c\u5b9e\u9645\u4e0a<code>docker</code>\u90e8\u7f72\u7684\u6ca1\u51e0\u4e2a\uff0c\u53cd\u800c<code>openlist</code>\u8fd9\u79cd<code>web</code>\u5e94\u7528\u5927\u591a\u662f<code>docker</code>\u90e8\u7f72\u3002</p>\n", 
      "date_published": "2025-08-21T03:33:14+00:00", 
      "title": "\u4e07\u7269\u7686 docker \u90e8\u7f72\uff0c\u771f\u7684\u6709\u5fc5\u8981\u5417\uff1f", 
      "id": "https://www.v2ex.com/t/1153902"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/cxzlhr", 
        "name": "cxzlhr", 
        "avatar": "https://cdn.v2ex.com/gravatar/c916f99cb1d6238cb10498b17a0f4210?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1150805", 
      "title": "\u53ea\u505a\u955c\u50cf harbor nexus \u4e24\u4e2a\u8f6f\u4ef6\u5bf9\u6bd4\u9009\u62e9\u54ea\u4e2a\u5462?", 
      "id": "https://www.v2ex.com/t/1150805", 
      "date_published": "2025-08-07T11:57:45+00:00", 
      "content_html": "<p>\u9694\u79bb\u7f51\u7edc\uff0c\u5185\u5916\u7f51\uff0c\u6709\u53cc\u7f51\u5361\u7684\u673a\u5668\uff0c\u9700\u8981\u505a docker \u955c\u50cf\u5e93\u4ee3\u7406\uff0charbor nexus \u4e24\u4e2a\u600e\u4e48\u9009\u62e9\u5462\uff1f\n\u4e24\u5177\u8003\u8651\u70b9\n\u7f51\u4e0a\u67e5\u8bf4 harbor \u6bd4\u8f83\u597d\u7528\uff0c\n\u56e0\u4e3a\u9700\u8981\u505a linux \u7684\u66f4\u65b0\u6e90\uff0c\u5f53\u524d\u5c31\u6709 nexus</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/cnt2ex", 
        "name": "cnt2ex", 
        "avatar": "https://cdn.v2ex.com/avatar/57fb/ae44/96660_large.png?m=1741165498"
      }, 
      "url": "https://www.v2ex.com/t/1147792", 
      "date_modified": "2025-07-25T17:25:17+00:00", 
      "content_html": "<p>\u5927\u6982\u7684\u80cc\u666f\u662f\u8fd9\u6837\u7684\u3002</p>\n<p>\u6211\u6709 3 \u4e2a\u670d\u52a1\uff0c\u5206\u522b\u662f\u901a\u8fc7 3 \u4e2a compose.yml \u7ba1\u7406\u7684\u3002\n\u4e00\u4e2a\u670d\u52a1\u662f caddy \uff0c\u4f5c\u4e3a\u53cd\u5411\u4ee3\u7406\uff0c\u540c\u65f6\u53cd\u4ee3\u53e6\u5916\u4e24\u4e2a\u670d\u52a1\uff08\u53eb\u5b83\u4eec A \u548c B \u597d\u4e86\uff09\u3002\ncaddy \u5bb9\u5668\u901a\u8fc7 external network \u548c A \u3001B \u76f8\u8fde\uff0c\u5e76\u4e14\u901a\u8fc7\u5bb9\u5668\u540d\u8bbf\u95ee A \u548c B \u3002</p>\n<p>\u4f46\u662f\u670d\u52a1 A \u548c B \u90fd\u9700\u8981\u8bbf\u95ee\u4e00\u4e9b\u88ab\u6c61\u67d3\u4e86\u7684\u7f51\u7ad9\uff08\u6bd4\u5982 <a href=\"http://raw.githubusercontent.com\" rel=\"nofollow\">raw.githubusercontent.com</a>)\uff0c\u867d\u7136\u8bd5\u8fc7\u8bbe\u7f6e HTTP_PROXY/HTTPS_PROXY \u7b49\u73af\u5883\u53d8\u91cf\u8ba9\u5b83\u4eec\u8d70\u4ee3\u7406\uff0c\u4f46\u662f\u4f9d\u7136\u6709\u90e8\u5206\u6d41\u91cf\u76f4\u8fde\uff0c\u56e0\u6b64\u6253\u7b97\u518d\u8dd1\u4e00\u4e2a VPN \u5bb9\u5668\u6765\u63a5\u7ba1\u8fd9\u4e24\u4e2a\u670d\u52a1\u7684\u6d41\u91cf\u3002</p>\n<p>\u5047\u8bbe\u6211\u8dd1\u8d77\u6765\u4e86\u4e00\u4e2a VPN \u5bb9\u5668\uff0c\u8be5\u600e\u4e48\u63a5\u7ba1 A \u548c B \u7684\u6d41\u91cf\u5462\uff1f</p>\n", 
      "date_published": "2025-07-25T17:25:04+00:00", 
      "title": "\u5728\u5bb9\u5668\u91cc\u8fd0\u884c VPN\uff0c\u5982\u4f55\u63a5\u7ba1\u5176\u4ed6\u5bb9\u5668\u7684\u6d41\u91cf\u4f5c\u4e3a\u9ed8\u8ba4\u51fa\u53e3\uff1f", 
      "id": "https://www.v2ex.com/t/1147792"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/laminux29", 
        "name": "laminux29", 
        "avatar": "https://cdn.v2ex.com/gravatar/f5dac702f2936e95d543670f76649f23?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1147750", 
      "title": "docker \u91cd\u78c5\u5b89\u5168\u6f0f\u6d1e", 
      "id": "https://www.v2ex.com/t/1147750", 
      "date_published": "2025-07-25T10:40:02+00:00", 
      "content_html": "\u6211\u4eec\u5728\u4f7f\u7528 docker \u65f6\uff0c\u4e00\u822c\u4f1a\u4f7f\u7528 -p / --publish \u6765\u6620\u5c04\u7aef\u53e3\u5230\u5bbf\u4e3b\u673a\uff0c\u7136\u540e\u5728 iptables \u7684 INPUT Chain \u91cc\u5f00\u4e00\u6761\u767d\u540d\u5355\u89c4\u5219\uff0c\u5141\u8bb8\u6307\u5b9a\u7684 IP \u6216 IP \u8303\u56f4\u6765\u8bbf\u95ee\u8fd9\u4e2a\u7aef\u53e3\u3002<br /><br />\u95ee\u9898\u662f\uff0c\u5f88\u591a\u670b\u53cb\u6d4b\u8bd5\u80fd\u8bbf\u95ee\u540e\uff0c\u5f88\u5bb9\u6613\u5077\u61d2\uff0c\u4e0d\u518d\u6d4b\u8bd5\u522b\u7684 IP \u662f\u5426\u80fd\u8bbf\u95ee\u4e86\u3002docker \u7684\u91cd\u78c5\u5b89\u5168\u6f0f\u6d1e\u4e5f\u5c31\u5728\u8fd9\u91cc\u51fa\u73b0\u3002\u5982\u679c\u4f60\u7ee7\u7eed\u6d4b\u8bd5\uff0c\u4f60\u4f1a\u53d1\u73b0\uff0c\u4e0d\u5728\u767d\u540d\u5355\u7684 IP \u5730\u5740\uff0c\u4e5f\u80fd\u8bbf\u95ee\u8fd9\u4e2a\u7aef\u53e3\u3002<br /><br />\u539f\u56e0\u5728\u4e8e docker \u81ea\u884c\u7ba1\u7406 iptables \uff0c\u5b83\u7ed9 iptables \u91cc\u63d2\u5165\u4e00\u5927\u5806 Rule Chain \uff0c\u7ed5\u5f00\u4e86 INPUT Chain \u7684\u7ba1\u7406\u3002<br /><br />\u901a\u8fc7\u4ee5\u4e0b\u4e24\u6761\u547d\u4ee4\uff1a<br /><br />iptables --list --verbose --numeric<br /><br />iptables --list --verbose --numeric --table nat<br /><br />\u53ef\u4ee5\u53d1\u73b0 docker \u63d2\u5165\u4e86\u4e00\u5806\u4ee5 DOCKER \u547d\u540d\u7684 Rule Chain \u3002<br /><br />\u672c\u6765\u6807\u51c6\u7684\u8f6f\u786c\u4ef6\u9632\u706b\u5899\uff0c\u5305\u62ec iptables \u3001Windows \u9632\u706b\u5899\uff0c\u4e3a\u4e86\u5b89\u5168\uff0c\u90fd\u662f\u9ed8\u8ba4\u4f7f\u7528\u767d\u540d\u5355\u5236\uff0c\u800c docker \u7684\u9632\u706b\u5899\u5374\u662f\u9ed1\u540d\u5355\u5236\u7684\uff0c\u8fd9\u4e0e\u5b89\u5168\u7406\u5ff5\u51b2\u7a81\u3002<br /><br />\u5efa\u8bae\u5173\u95ed docker \u7684\u81ea\u884c\u7ba1\u7406\u9632\u706b\u5899\u7684\u529f\u80fd\uff0c\u5411 /etc/docker/daemon.json \u6dfb\u52a0 \"iptables\": false<br /><br />\u7136\u540e\u624b\u52a8\u6e05\u7406 docker \u5411 iptables \u91cc\u6dfb\u52a0\u7684\u5404\u79cd Rule Chain<br /><br />\u6700\u540e\u624b\u52a8\u7ba1\u7406 docker \u7684\u9632\u706b\u5899\uff0c\u6765\u52a0\u5f3a\u5b89\u5168\u3002"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/elgae", 
        "name": "elgae", 
        "avatar": "https://cdn.v2ex.com/gravatar/50e023748ad1979781eba65377edfd6e?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1147454", 
      "date_modified": "2025-07-24T13:04:17+00:00", 
      "content_html": "<p>\u8bf7\u6559\u540e\u7aef\u7684\u5e05\u54e5\u4eec\u4e00\u4e2a\u95ee\u9898\uff0c\u5148\u8c22\u8c22\u5927\u5bb6\u4e86\u3002\ud83d\ude4f\ud83d\ude47</p>\n<p>\u540e\u7aef<code>\u670d\u52a1 A</code>\u90e8\u7f72\u5728\u4e00\u4e2a docker \u4e2d\uff0c<code>\u53ef\u6267\u884c\u6587\u4ef6 as</code>\u53ca\u5176\u4f9d\u8d56\u90e8\u7f72\u5728\u53e6\u4e00\u4e2a docker \u4e2d\u3002</p>\n<p><code>\u670d\u52a1 A</code>\u9700\u8981\u8c03\u7528<code>as</code>\uff0c\u4e14\u8c03\u7528\u65f6\u9700\u8981\u4f20\u7ed9<code>as</code>\u4e00\u4e2a\u4f4d\u4e8e\u5bbf\u4e3b\u673a\u4e0a\u7684\u6587\u4ef6\u8def\u5f84\u3002</p>\n<p>\u5728\u4fdd\u8bc1\u4ee5\u4e0b\u4e24\u70b9\u7684\u524d\u63d0\u4e0b\uff0c\u5b9e\u73b0\u8fd9\u4e2a\u6709\u4ec0\u4e48\u597d\u7684\u65b9\u6848\u5417\uff1f\u671b\u6307\u70b9</p>\n<ol>\n<li>\u5b89\u5168\uff0c\u9700\u8981\u6ee1\u8db3\u89e6\u53d1\u94f6\u884c\u3001\u91d1\u878d\u7b49\u884c\u4e1a\u7684\u5ba1\u67e5\uff1b</li>\n<li>\u4e0e\u76f4\u63a5\u5728\u5bbf\u4e3b\u673a\u4e0a\u8c03\u7528\u53ef\u6267\u884c\u6587\u4ef6\u76f8\u6bd4\uff0c\u6267\u884c\u8017\u65f6\u6700\u597d\u5dee\u4e0d\u591a\uff1b</li>\n</ol>\n", 
      "date_published": "2025-07-24T09:42:38+00:00", 
      "title": "\u8bf7\u6559\u4e00\u4e2a\u5173\u4e8e docker \u95f4\u7684\u901a\u4fe1\u95ee\u9898", 
      "id": "https://www.v2ex.com/t/1147454"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/XIoYi", 
        "name": "XIoYi", 
        "avatar": "https://cdn.v2ex.com/avatar/e9b3/5c6b/487166_large.png?m=1712914081"
      }, 
      "url": "https://www.v2ex.com/t/1147095", 
      "title": "[\u6c42\u52a9] Debian12 \u4fee\u6539 docker \u7684 daemon.json \u6587\u4ef6\u540e\u4e0d\u751f\u6548", 
      "id": "https://www.v2ex.com/t/1147095", 
      "date_published": "2025-07-23T04:26:56+00:00", 
      "content_html": "\u5982\u9898\uff0c\u600e\u4e48\u6539\uff0c\u600e\u4e48\u91cd\u542f\u90fd\u4e0d\u751f\u6548\uff0c\u79bb\u8c31\u7684\u5f88\u3002<br />\u4e0d\u7ba1\u6211\u600e\u4e48\u6539\uff0c\u90fd\u662f\u4ece\u9ed8\u8ba4 <a target=\"_blank\" href=\"http://docker.io\" rel=\"nofollow noopener\">docker.io</a> \u8fd9\u4e2a\u9ed8\u8ba4\u6e90\u4e0b\u8f7d\u955c\u50cf\u2026\u2026<br />\u6709\u6ca1\u6709\u8001\u54e5\u6709\u89e3\u51b3\u529e\u6cd5\u554a\uff1f"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/julyclyde", 
        "name": "julyclyde", 
        "avatar": "https://cdn.v2ex.com/gravatar/4dae02ea3d84a8c34fec215b261bfb5f?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1146967", 
      "title": "docker compose \u90a3\u4e2a\u5185\u90e8 DNS \u5230\u5e95\u662f\u600e\u4e48\u5de5\u4f5c\u7684", 
      "id": "https://www.v2ex.com/t/1146967", 
      "date_published": "2025-07-22T12:44:30+00:00", 
      "content_html": "<p>/etc/resolv.conf \u5199\u7740 127.0.0.11\n\u6309\u8bf4 127.\u4efb\u4f55\u90fd\u662f localhost \u5427\n\u4f46\u662f ps \u67e5\u770b\u5e76\u6ca1\u6709\u8fd0\u884c\u4e2a\u8fdb\u7a0b\u5728 53 \u7aef\u53e3</p>\n<p>docker \u5230\u5e95\u662f\u600e\u4e48\u5b9e\u73b0\u5728 127.0.0.11:53 \u76d1\u542c DNS \u8bf7\u6c42\u4f46\u662f\u8fdb\u7a0b\u5e76\u4e0d\u51fa\u73b0\u5728\u5bb9\u5668\u91cc\uff1f</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/xzsadsad", 
        "name": "xzsadsad", 
        "avatar": "https://cdn.v2ex.com/gravatar/8703e2f9d40e447a8b14b1c4d66218b8?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1146727", 
      "title": "\u5c0f\u767d\u6c42\u52a9\uff0c Docker \u62a5\u9519 132 \u662f\u4ec0\u4e48\u95ee\u9898\u5462\uff1f", 
      "id": "https://www.v2ex.com/t/1146727", 
      "date_published": "2025-07-21T14:11:58+00:00", 
      "content_html": "k3 \u8def\u7531\u5668\uff0c\u521a\u53d1\u73b0\u4e86\u5e26 docker \u7684\u56fa\u4ef6\uff0c\u60f3\u8bd5\u8bd5\u5b89\u88c5 homeassistant \uff0c\u7eaf\u5c0f\u767d\uff0c\u6069\u5c71\u6ca1\u56de\u590d\u7684\uff0c\u641c\u7d22\u4e5f\u6ca1\u627e\u5230\u539f\u56e0\uff0c\u5c31\u4e00\u4e2a portainerUI \u6210\u529f\u8fd0\u884c\u4e86\uff0c\u5176\u4ed6\u7684\u90fd\u62a5\u9519 132 \uff0c\u662f\u4ec0\u4e48\u539f\u56e0\u5462\uff1f\u6211\u6000\u7591\u662f\u4e0d\u662f\u6865\u63a5\u8054\u7f51\u8bbe\u7f6e\u9519\u8bef\u4e86\uff1f\u8fd8\u662f\u8ddf\u8c37\u6b4c\u7684\u4e00\u6837 cpu \u4e0d\u652f\u6301\uff1f\u6709\u5927\u54e5\u80fd\u7ed9\u89e3\u60d1\u4e00\u4e0b\u5417<br /><a target=\"_blank\" href=\"https://i.imgur.com/Vg1OnQI.png\" rel=\"nofollow noopener\" target=\"_blank\"><img src=\"https://i.imgur.com/Vg1OnQI.png\" class=\"embedded_image\" rel=\"noreferrer\"></a>"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/yunnysunny", 
        "name": "yunnysunny", 
        "avatar": "https://cdn.v2ex.com/gravatar/956d02450a02d2fef31dccc591cb4410?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1146704", 
      "date_modified": "2025-07-22T00:15:12+00:00", 
      "content_html": "<p>\u8ddd\u79bb\u56fd\u5185 docker \u955c\u50cf\u7ad9\u5931\u6548\u5df2\u7ecf\u6709\u5f88\u957f\u65f6\u95f4\u4e86\uff0c\u4e0d\u8fc7\u7edd\u5927\u591a\u6570\u6280\u672f\u516c\u53f8\u5185\u90e8\u5e94\u8be5\u90fd\u662f\u80fd\u6b63\u5e38\u4f7f\u7528 docker \u7684\uff0c\u56e0\u4e3a\u6ca1\u6709\u9b54\u6cd5\uff0c\u5c31\u4e0d\u80fd\u79f0\u4e4b\u4e3a\u6280\u672f\u516c\u53f8\u3002\u4f46\u662f\u5982\u679c\u81ea\u5df1\u5728\u5bb6\u60f3\u4f7f\u7528 docker \uff0c\u53c8\u4e00\u65f6\u95f4\u4e22\u5931\u4e86\u65bd\u6cd5\u80fd\u529b\uff0c\u90a3\u4e48\u8fd9\u4e2a\u9879\u76ee\u5e94\u8be5\u9002\u5408\u4f60\uff1a <a href=\"https://github.com/whyun-pages/docker-registry\" rel=\"nofollow\">https://github.com/whyun-pages/docker-registry</a> \u3002\u5b83\u501f\u52a9 cloudflare pages \u6765\u63d0\u4f9b dockerhub \u7684\u53cd\u4ee3\u8bf7\u6c42\uff0c\u8ba9\u4f60\u91cd\u65b0\u65bd\u6cd5\u6210\u529f\u3002\n\u5f53\u7136\u4e3a\u4e86\u9632\u6b62\u79d8\u7c4d\u5916\u6cc4\uff0c\u9879\u76ee\u4e2d\u4e5f\u63d0\u4f9b\u4e86\u767d\u540d\u5355\u529f\u80fd\uff0c\u53ea\u5141\u8bb8\u6307\u5b9a\u7528\u6237\u8bbf\u95ee\uff0c\u9632\u6b62\u6709\u4eba\u53cd\u5411\u767d\u5ad6\u3002</p>\n", 
      "date_published": "2025-07-21T11:48:03+00:00", 
      "title": "\u81ea\u5df1\u642d\u5efa\u4e00\u4e2a docker \u955c\u50cf\u7ad9", 
      "id": "https://www.v2ex.com/t/1146704"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/Meditation", 
        "name": "Meditation", 
        "avatar": "https://cdn.v2ex.com/avatar/d103/04ab/491150_large.png?m=1774886312"
      }, 
      "url": "https://www.v2ex.com/t/1146433", 
      "date_modified": "2025-07-20T07:50:50+00:00", 
      "content_html": "<p>\u5728 windows11 \u4e2d\u5b89\u88c5\u4e86 WSL 2 \uff08 Ubuntu \uff09\uff0c\u5b89\u88c5\u4e86 docker \u540e\uff0c\u6b7b\u6d3b\u6ca1\u6cd5 pull image \u3002</p>\n<pre><code>docker-compose up\nPulling db (mysql:8.0)...\nERROR: Get \"https://registry-1.docker.io/v2/\": context deadline exceeded\n</code></pre>\n<p>\u5c1d\u8bd5\u8fc7\u7684\u65b9\u6cd5\uff1a</p>\n<ol>\n<li>\u4fee\u6539 /etc/docker/daemon.json \uff0c\u6dfb\u52a0\u963f\u91cc\u4e91\u955c\u50cf\u6e90</li>\n<li>\u4f7f\u7528 ipv4</li>\n<li>\u4fee\u6539 /etc/resolv.conf \uff0c\u4f7f\u7528 nameserver 8.8.8.8 nameserver 1.1.1.1</li>\n</ol>\n<p>\u9ebb\u4e86\uff0c\u6709\u6ca1\u5927\u4f6c\u77e5\u9053\u5e94\u8be5\u600e\u4e48\u89e3\u51b3\u8fd9\u4e2a\u95ee\u9898\u5440\u3002</p>\n", 
      "date_published": "2025-07-20T07:48:21+00:00", 
      "title": "WSL \u4e2d\u65e0\u6cd5\u8bbf\u95ee registry-1.docker.io/v2/\uff0c\u6ca1\u6cd5\u7528 docker \u62c9\u53d6 image\uff0c\u8bd5\u4e86\u5f88\u591a\u65b9\u6cd5\u90fd\u4e0d\u884c\uff0c\u7d2f\u4e86", 
      "id": "https://www.v2ex.com/t/1146433"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/nextone", 
        "name": "nextone", 
        "avatar": "https://cdn.v2ex.com/avatar/e9d3/e7e3/79054_large.png?m=1605146942"
      }, 
      "url": "https://www.v2ex.com/t/1146301", 
      "title": "\u600e\u4e48\u5bf9 docker \u7684\u5bb9\u5668\u9650\u901f", 
      "id": "https://www.v2ex.com/t/1146301", 
      "date_published": "2025-07-19T06:13:30+00:00", 
      "content_html": "<p>\u7528 docker \u8fd0\u884c\u8fc5\u96f7\uff0c\u6709\u54ea\u4e9b\u7a0d\u5fae\u7b80\u5355\u7684\u65b9\u6cd5\u9650\u5236\u4e0a\u4f20\uff1f</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/soustinafey", 
        "name": "soustinafey", 
        "avatar": "https://cdn.v2ex.com/gravatar/07567063b2f50ac25ba2369580c14c3a?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1145941", 
      "title": "docker \u5982\u4f55\u4e0d\u8d70\u4ee3\u7406\uff1f", 
      "id": "https://www.v2ex.com/t/1145941", 
      "date_published": "2025-07-17T13:01:47+00:00", 
      "content_html": "<p>docker \u5982\u4f55\u4e0d\u8d70\u4ee3\u7406\uff1f</p>\n<p>\u6211\u7684\u7cfb\u7edf\u662f linux \u4f7f\u7528\u4ee3\u7406\u4e0b\u8f7d\u7684 docker \u548c openwebui</p>\n<p>\u4f46\u662f\u6211\u7684 docker \u5b8c\u5168\u6ca1\u6709\u8bbe\u7f6e\u4efb\u4f55\u4ee3\u7406  \u91cc\u9762\u7684\u5bb9\u5668(localhost)\u5c45\u7136\u8d70\u7684 v2rayN </p>\n<p>\u600e\u4e48\u624d\u80fd\u8ba9 docker \u91cc\u9762\u7684\u5bb9\u5668\u4e0d\u8d70 v2rayN \u5462? \u6211\u8bb0\u5f97\u9ed8\u8ba4\u7684 v2rayN \u8bbe\u7f6e\u90fd\u662f\u8df3\u8fc7 geoip:private.</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/Betsy", 
        "name": "Betsy", 
        "avatar": "https://cdn.v2ex.com/avatar/6884/5343/132385_large.png?m=1748368206"
      }, 
      "url": "https://www.v2ex.com/t/1143231", 
      "date_modified": "2025-07-06T01:23:18+00:00", 
      "content_html": "<h3>\u80cc\u666f\u4ecb\u7ecd</h3>\n<p>\u73b0\u5728\u6709\u4e2a\u7269\u7406\u673a\uff0cIP \u5730\u5740\u4e3a 192.168.1.111</p>\n<p>\u5728\u7269\u7406\u673a\u4e0a\u9762\u88c5\u4e86\u4e00\u4e2a docker \uff0c\u5e76\u4e14\u521b\u5efa\u4e86\u4e00\u4e2a container \uff0c\u5176 IP \u5730\u5740\u4e3a 192.168.49.2</p>\n<h3>\u95ee\u9898\u8bf4\u660e</h3>\n<p>\u73b0\u5728\u60f3\u5728\u7269\u7406\u673a\u548c docker container \u91cc\u9762\u5747\u53ef\u4ee5\u6210\u529f\u6267\u884c\u4e0b\u8ff0\u547d\u4ee4\u3002\u76ee\u524d\u53ea\u6709\u7269\u7406\u673a\u4e2d\u53ef\u4ee5\u6b63\u786e\u6267\u884c\u3002</p>\n<pre><code class=\"language-bash\">curl -X GET https://registry-1.docker.io/v2/ -v \n</code></pre>\n<h3>\u6267\u884c\u547d\u4ee4\u7ed3\u679c</h3>\n<p><em>\u7269\u7406\u673a\u6267\u884c\u547d\u4ee4\u7ed3\u679c</em></p>\n<pre><code>#&gt; curl -X GET https://registry-1.docker.io/v2/ -v\nNote: Unnecessary use of -X or --request, GET is already inferred.\n* Uses proxy env variable no_proxy == 'localhost,127.0.0.0/8,::1'\n* Uses proxy env variable https_proxy == 'http://127.0.0.1:7890/'\n*   Trying 127.0.0.1:7890...\n* Connected to 127.0.0.1 (127.0.0.1) port 7890\n* CONNECT tunnel: HTTP/1.1 negotiated\n* allocate connect buffer\n* Establish HTTP proxy tunnel to registry-1.docker.io:443\n&gt; CONNECT registry-1.docker.io:443 HTTP/1.1\n&gt; Host: registry-1.docker.io:443\n&gt; User-Agent: curl/8.5.0\n&gt; Proxy-Connection: Keep-Alive\n&gt; \n&lt; HTTP/1.1 200 Connection established\n&lt; \n* CONNECT phase completed\n* CONNECT tunnel established, response 200\n* ALPN: curl offers h2,http/1.1\n* TLSv1.3 (OUT), TLS handshake, Client hello (1):\n*  CAfile: /etc/ssl/certs/ca-certificates.crt\n*  CApath: /etc/ssl/certs\n* TLSv1.3 (IN), TLS handshake, Server hello (2):\n* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):\n* TLSv1.3 (IN), TLS handshake, Certificate (11):\n* TLSv1.3 (IN), TLS handshake, CERT verify (15):\n* TLSv1.3 (IN), TLS handshake, Finished (20):\n* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):\n* TLSv1.3 (OUT), TLS handshake, Finished (20):\n* SSL connection using TLSv1.3 / TLS_AES_128_GCM_SHA256 / X25519 / RSASSA-PSS\n* ALPN: server did not agree on a protocol. Uses default.\n* Server certificate:\n*  subject: CN=*.docker.com\n*  start date: Mar  5 00:00:00 2025 GMT\n*  expire date: Apr  3 23:59:59 2026 GMT\n*  subjectAltName: host \"registry-1.docker.io\" matched cert's \"*.docker.io\"\n*  issuer: C=US; O=Amazon; CN=Amazon RSA 2048 M03\n*  SSL certificate verify ok.\n*   Certificate level 0: Public key type RSA (2048/112 Bits/secBits), signed using sha256WithRSAEncryption\n*   Certificate level 1: Public key type RSA (2048/112 Bits/secBits), signed using sha256WithRSAEncryption\n*   Certificate level 2: Public key type RSA (2048/112 Bits/secBits), signed using sha256WithRSAEncryption\n* using HTTP/1.x\n&gt; GET /v2/ HTTP/1.1\n&gt; Host: registry-1.docker.io\n&gt; User-Agent: curl/8.5.0\n&gt; Accept: */*\n&gt; \n&lt; HTTP/1.1 401 Unauthorized\n&lt; content-type: application/json\n&lt; docker-distribution-api-version: registry/2.0\n&lt; www-authenticate: Bearer realm=\"https://auth.docker.io/token\",service=\"registry.docker.io\"\n&lt; date: Sat, 05 Jul 2025 10:23:42 GMT\n&lt; content-length: 87\n&lt; strict-transport-security: max-age=31536000\n&lt; \n{\"errors\":[{\"code\":\"UNAUTHORIZED\",\"message\":\"authentication required\",\"detail\":null}]}\n* Connection #0 to host 127.0.0.1 left intact\n</code></pre>\n<p><em>docker container \u4e2d\u6267\u884c\u547d\u4ee4\u7ed3\u679c</em></p>\n<pre><code>#&gt; curl -X GET https://registry-1.docker.io/v2/ -v\nNote: Unnecessary use of -X or --request, GET is already inferred.\n*   Trying 154.85.102.30:443...\n*   Trying 2600:1f18:2148:bc00:5cac:48a0:7f88:7266:443...\n* Immediate connect fail for 2600:1f18:2148:bc00:5cac:48a0:7f88:7266: Network is unreachable\n*   Trying 2600:1f18:2148:bc01:f43d:e203:cafd:8307:443...\n* Immediate connect fail for 2600:1f18:2148:bc01:f43d:e203:cafd:8307: Network is unreachable\n*   Trying 2600:1f18:2148:bc02:22:27bd:19a8:870c:443...\n* Immediate connect fail for 2600:1f18:2148:bc02:22:27bd:19a8:870c: Network is unreachable\n* connect to 154.85.102.30 port 443 failed: Connection timed out\n* Failed to connect to registry-1.docker.io port 443 after 133144 ms: Connection timed out\n* Closing connection 0\ncurl: (28) Failed to connect to registry-1.docker.io port 443 after 133144 ms: Connection timed out\n</code></pre>\n<p><em>\u7269\u7406\u673a\u67e5\u8be2\u5230\u7684\u8def\u7531\u8868</em></p>\n<pre><code>#&gt; ip route   \ndefault via 192.168.1.1 dev wlo1 proto dhcp src 192.168.1.111 metric 600 \n172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown \n192.168.1.0/24 dev wlo1 proto kernel scope link src 192.168.1.111 metric 600 \n192.168.49.0/24 dev br-9123093efaea proto kernel scope link src 192.168.49.1 \n</code></pre>\n", 
      "date_published": "2025-07-05T10:50:17+00:00", 
      "title": "\u8bf7\u6559\u5927\u5bb6\u4e00\u4e2a\u5173\u4e8e docker \u7f51\u7edc\u7684\u95ee\u9898", 
      "id": "https://www.v2ex.com/t/1143231"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/lyxxxh2", 
        "name": "lyxxxh2", 
        "avatar": "https://cdn.v2ex.com/avatar/683e/710d/583505_large.png?m=1764570045"
      }, 
      "url": "https://www.v2ex.com/t/1141418", 
      "date_modified": "2025-06-27T03:35:49+00:00", 
      "content_html": "<h2>\u963f\u91cc\u4e91\"\u955c\u50cf\u52a0\u901f\u5668\"</h2>\n<p><img alt=\"https://i.imgur.com/10kB31a.png\" class=\"embedded_image\" loading=\"lazy\" referrerpolicy=\"no-referrer\" rel=\"noreferrer\" src=\"https://i.imgur.com/10kB31a.png\"/></p>\n<p>\u6628\u5929\u62c9 AnythingLLM \u4e5f\u662f\u8fd9\u6837\u3002</p>\n<h2>\u7f51\u6613 \u817e\u8baf\u4e91\u7b49</h2>\n<p><img alt=\"https://i.imgur.com/R9IVMlC.png\" class=\"embedded_image\" loading=\"lazy\" referrerpolicy=\"no-referrer\" rel=\"noreferrer\" src=\"https://i.imgur.com/R9IVMlC.png\"/></p>\n<p><img alt=\"https://i.imgur.com/xp6zWfP.png\" class=\"embedded_image\" loading=\"lazy\" referrerpolicy=\"no-referrer\" rel=\"noreferrer\" src=\"https://i.imgur.com/xp6zWfP.png\"/></p>\n<p>\u90fd ping \u4e0d\u901a,\u4e0b\u67b6\u4e86? \u6ca1\u770b\u5230\u8d44\u6599\u554a\u3002</p>\n<h2>\u73b0\u5728</h2>\n<p>\u5f88\u4e45\u6ca1\u7528 docker \u4e86,\u6211\u77e5\u9053\u653f\u5e9c\u628a dockerhub \u5c4f\u853d\u4e86\u3002</p>\n<p>\u4f46\u662f\u56fd\u5185\u8fd9\u4e9b\u955c\u50cf\u6e90,\u600e\u4e48\u4e00\u4e2a\u90fd\u62c9\u4e0d\u6765\u4e86\u56fd\u5916\u955c\u50cf? </p>\n<h2>\u95ee\u9898</h2>\n<p>\u6211\u73b0\u5728\u53ea\u80fd\u672c\u5730\u7ffb\u5899,\u62c9\u53d6\u955c\u50cf,\u4e0b\u8f7d,\u4e0a\u4f20\u5230\u670d\u52a1\u5668\u3002</p>\n<p>\u592a\u9ebb\u70e6\u4e86,\u6709\u76f4\u63a5\u62c9\u7684\u65b9\u5f0f\u5417?</p>\n", 
      "date_published": "2025-06-27T03:34:37+00:00", 
      "title": "\u4e3a\u4ec0\u4e48\u56fd\u5185\u955c\u50cf\u6e90\u90fd\u4e0d\u66f4\u65b0\u56fd\u5916\u7684\u955c\u50cf?", 
      "id": "https://www.v2ex.com/t/1141418"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/Haku", 
        "name": "Haku", 
        "avatar": "https://cdn.v2ex.com/avatar/f178/a1b8/133660_large.png?m=1770122472"
      }, 
      "url": "https://www.v2ex.com/t/1136319", 
      "title": "\u8bf7\u95ee docker \u955c\u50cf\u662f\u5426\u5b58\u5728\u7248\u672c\u517c\u5bb9\u95ee\u9898\uff1f", 
      "id": "https://www.v2ex.com/t/1136319", 
      "date_published": "2025-06-04T07:27:39+00:00", 
      "content_html": "<p>\u5916\u90e8\u670d\u52a1\u5668\u4f7f\u7528 docker 27.5.1 \uff0c\u6253\u5305\u4e86\u4e00\u4e2a 40g \u7684\u955c\u50cf\uff0c\u6253\u7b97\u5bfc\u5165\u5230\u5185\u7f51\u4f7f\u7528\uff0c\u4f46\u662f\u5bfc\u5165\u4e00\u76f4\u62a5\u9519\uff0c\u5185\u7f51\u7ef4\u62a4\u4eba\u5458\u8868\u793a docker \u7248\u672c\u592a\u9ad8\uff0c\u5185\u90e8\u4f7f\u7528 docker 20.x \u7248\u672c\uff0c\u56e0\u4e3a\u5e73\u53f0\u539f\u56e0\uff0c\u6ca1\u6709\u76f8\u5173\u9519\u8bef\u65e5\u5fd7\u3002</p>\n<p>\u6240\u4ee5\u524d\u6765\u95ee\u95ee\u5404\u4f4d\uff0cdocker \u662f\u5426\u786e\u5b9e\u6709\u8fd9\u4e2a\u95ee\u9898\uff1f\u4ee5\u53ca\u5982\u679c\u6709\u7684\u60c5\u51b5\u4e0b\uff0c\u5982\u4f55\u5728\u9ad8\u7248\u672c docker \u4e0b\u6253\u5305\u4e00\u4e2a\u4f4e\u7248\u672c docker \u517c\u5bb9\u7684\u955c\u50cf\uff1f</p>\n<p>\u7f51\u4e0a\u67e5\u627e\u8be5\u95ee\u9898\u63cf\u8ff0\u751a\u5c11\uff0c\u53ea\u6709 chatgpt \u63d0\u5230\u4e86\u4e00\u5634 docker \u65b0\u7248\u672c\u4f7f\u7528\u4e86 BuildKit \u7279\u6027\uff0c\u6240\u4ee5\u53ef\u80fd\u5b58\u5728\u7248\u672c\u517c\u5bb9\u95ee\u9898\uff0c\u8fdb\u4e00\u6b65\u67e5\u627e\u6ca1\u6709\u5f97\u5230\u66f4\u591a\u3002</p>\n<p>\u5916\u90e8\u670d\u52a1\u5668\u5bb9\u5668\u73af\u5883\u590d\u6742\uff0c\u4e0d\u592a\u65b9\u4fbf\u518d\u91cd\u88c5\u4e00\u4e2a\u4f4e\u7248\u672c docker \uff0c\u5e0c\u671b\u80fd\u6709\u4e0d\u91cd\u88c5\u73af\u5883\u7684\u89e3\u51b3\u65b9\u6848\u3002</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/424778940", 
        "name": "424778940", 
        "avatar": "https://cdn.v2ex.com/avatar/f2cd/b577/197754_large.png?m=1688277131"
      }, 
      "url": "https://www.v2ex.com/t/1136118", 
      "date_modified": "2025-06-03T10:25:55+00:00", 
      "content_html": "\u5982\u9898, \u76ee\u524d\u5728\u7528 NIX, \u4f46\u5b9e\u5728\u662f\u4e0d\u592a\u559c\u6b22\u8fd9\u4e2a\u4e1c\u897f\u7684\u8bbe\u8ba1\u548c\u8bed\u6cd5, \u800c\u4e14\u8fd8\u662f\u4f1a\u53d7\u5230\u5916\u90e8\u73af\u5883\u5f71\u54cd(\u91cc\u9762\u6ca1\u6709\u7684\u4e1c\u897f\u4f1a\u7528\u5916\u9762\u7684)<br /><br />\u7528 docker \u7684\u8bdd, \u597d\u50cf\u6ca1\u6709\u529e\u6cd5\u9501\u5b9a\u7248\u672c\u6765\u786e\u4fdd\u6bcf\u6b21\u6784\u5efa\u51fa\u7684\u955c\u50cf\u90fd\u662f\u4e8c\u8fdb\u5236\u76f8\u540c\u7684<br /><br />\u6709\u4ec0\u4e48\u66f4\u597d\u7684\u505a\u6cd5\u5417? \u6c42\u6307\u6559", 
      "date_published": "2025-06-03T10:23:50+00:00", 
      "title": "\u6709\u6ca1\u6709\u53ef\u884c\u7684 reproducible \u5bb9\u5668\u73af\u5883\u65b9\u6848?", 
      "id": "https://www.v2ex.com/t/1136118"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/imurfuture", 
        "name": "imurfuture", 
        "avatar": "https://cdn.v2ex.com/avatar/39af/c561/343416_large.png?m=1719305800"
      }, 
      "url": "https://www.v2ex.com/t/1134804", 
      "title": "\u4e0d\u5b89\u88c5 docker \u6709\u529e\u6cd5\u76f4\u63a5\u4e0b\u8f7d\u955c\u50cf tar \u5305\u5417\uff1f", 
      "id": "https://www.v2ex.com/t/1134804", 
      "date_published": "2025-05-28T02:22:49+00:00", 
      "content_html": "\u770b\u5230\u7684\u65b9\u6848\u90fd\u662f\u5728\u6709\u7f51\u7684\u8bbe\u5907\u4e0a\u5b89\u88c5 docker \uff0cpull \u955c\u50cf\u4e4b\u540e\u518d\u5bfc\u51fa tar \u5305<br />\u7136\u540e\u518d\u5bfc\u5165\u6ca1\u6709\u7f51\u7684\u8bbe\u5907\u4e2d<br />------------------------<br />\u60f3\u8981\u76f4\u63a5\u4ece windows \u8bbe\u5907(\u6709\u7f51\u4f46\u662f\u65e0\u6cd5\u5b89\u88c5 docker desktop)\u4e0b\u8f7d\u955c\u50cf tar \u5305\uff0c\u6709\u4ec0\u4e48\u529e\u6cd5\u5417\uff1f"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/wynemo", 
        "name": "wynemo", 
        "avatar": "https://cdn.v2ex.com/avatar/9960/7461/5706_large.png?m=1740755738"
      }, 
      "url": "https://www.v2ex.com/t/1133446", 
      "title": "\u5728\u56fd\u5185\u670d\u52a1\u5668\u4e0a\u4f7f\u7528 sing-box \u65b9\u4fbf\u7684\u62c9\u53d6 docker \u955c\u50cf", 
      "id": "https://www.v2ex.com/t/1133446", 
      "date_published": "2025-05-22T02:07:57+00:00", 
      "content_html": "<p>\u5728\u56fd\u5185\u670d\u52a1\u5668\u4e0a\u62c9\u53d6 docker \u955c\u50cf\u73b0\u5728\u90fd\u51fa\u73b0 <a href=\"http://docker.io\" rel=\"nofollow\">docker.io</a> \u8fde\u63a5\u4e0d\u4e0a\u7684\u60c5\u51b5\uff0c\u53ef\u4ee5\u8dd1\u4e2a sing-box \uff0c\u5f00\u542f tun \u6a21\u5f0f\uff0c\u5c31\u53ef\u4ee5\u62c9\u53d6 docker \u955c\u50cf\u4e86\u3002</p>\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\u5982\u679c\u8bf4\u4f60\u7684 docker \u8fd8\u5bf9\u5916\u63d0\u4f9b\u670d\u52a1 \u9700\u8981\u6253\u5f00 auto_route \u4ee5\u53ca auto_redirect \u8fd9\u6837 tun \u6a21\u5f0f\u5c31\u4e0d\u4f1a\u4e0e docker \u7f51\u6865\u51b2\u7a81 \u4e0d\u7136\u53ef\u80fd\u4f1a\u51fa\u73b0\u6253\u5f00 sing-box \u65f6 docker \u5bf9\u5916\u63d0\u4f9b\u7684\u670d\u52a1\u8bbf\u95ee\u4e0d\u4e86</p>\n<p>\u8be6\u7ec6\u8bf7\u770b\uff1a <a href=\"https://github.com/wynemo/tech-notes/blob/master/science/sing-box/sing-box-for-docker-pull.md\" rel=\"nofollow\">https://github.com/wynemo/tech-notes/blob/master/science/sing-box/sing-box-for-docker-pull.md</a></p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/liubiubiu123123", 
        "name": "liubiubiu123123", 
        "avatar": "https://cdn.v2ex.com/avatar/ef7a/2cdf/666002_large.png?m=1728547585"
      }, 
      "url": "https://www.v2ex.com/t/1130412", 
      "date_modified": "2025-05-09T03:17:58+00:00", 
      "content_html": "<p>\u9700\u6c42\u662f \u516c\u53f8\u5916\u5305\u9879\u76ee\u7684\u540c\u4e8b\u53ea\u80fd\u770b\u5230\u90e8\u5206 docker \u5bb9\u5668\u7684\u65e5\u5fd7\u3002\n\u8bd5\u4e86\u4e00\u4e0b portainer \u548c dpanel.\u90fd\u662f\u6536\u8d39\u624d\u80fd\u7528 \u6743\u9650\u63a7\u5236\u7684\u529f\u80fd</p>\n", 
      "date_published": "2025-05-08T05:54:29+00:00", 
      "title": "\u6709\u6ca1\u6709\u5e26\u6743\u9650\u7684 docker \u7ba1\u7406\u5de5\u5177", 
      "id": "https://www.v2ex.com/t/1130412"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/yiluqingshen", 
        "name": "yiluqingshen", 
        "avatar": "https://cdn.v2ex.com/gravatar/0a2c941633e2a3f5e25a3011a2a60254?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1128765", 
      "title": "Openp2p \u8fdc\u7a0b\u8bbf\u95ee\u98de\u725b NAS \u5185\u5e94\u7528\u4e0d\u6210\u529f\uff0c\u8bf7\u6709\u7ecf\u9a8c\u7684\u8001\u94c1\u6307\u6559\u3002", 
      "id": "https://www.v2ex.com/t/1128765", 
      "date_published": "2025-04-29T00:37:37+00:00", 
      "content_html": "\u65e5\u5e38\u7ec4\u7f51\u8bbf\u95ee armbian \u76d2\u5b50 SSH \uff0c\u7535\u8111\u7aef 3389 \uff0cPVE \u90fd\u7a7f\u900f\u6210\u529f\u3002<br />\u4f46\u662f\u5728\u8bbf\u95ee\u98de\u725b NAS \u5185\u5b89\u88c5\u7684\u5e94\u7528\u65f6\u65e0\u6cd5\u8bbf\u95ee\u3002<br />---\u76ee\u524d\u672a\u627e\u5230\u6709\u6548\u7a7f\u900f\u6210\u529f\u4e4b\u540e\u8bbf\u95ee\u98de\u725b NAS \u5185\u5e94\u7528\u7684\u65b9\u6cd5\uff08 lucky \u53cd\u4ee3\u65b9\u6848\u4e0d\u6210\u529f\uff0c\u56e0\u65e0\u8def\u7531\u5668\u7ba1\u7406\u6743\u9650\uff09\u3002<br />\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u8bf7\u770b VCR\uff1a<br /><a target=\"_blank\" href=\"https://imgur.com/a/ezk9pOL\" rel=\"nofollow noopener\">https://imgur.com/a/ezk9pOL</a><br /><br /><br />-----\u5b9e\u5728\u6ca1\u4eba\u61c2\u6280\u672f\uff0c\u6240\u4ee5\u5230 DOCKER \u8fd9\u6c34\u4e00\u4e2a\u5e16\u5b50\uff0c\u8bf7\u7ba1\u7406\u4e0d\u8981\u5220\u3002"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/juzi214032", 
        "name": "juzi214032", 
        "avatar": "https://cdn.v2ex.com/gravatar/7d18077a50ff6cbab1a05e20135d9d2b?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1128566", 
      "date_modified": "2025-04-28T02:40:31+00:00", 
      "content_html": "<p>\u6211\u7684 nas \u4e0a\u90e8\u7f72\u4e86\u5f88\u591a docker \u670d\u52a1\uff0c\u4f46\u5176\u4e2d\u6709\u76f8\u5f53\u4e00\u90e8\u5206\u662f\u4e00\u4e9b\u5de5\u5177\u7c7b\u7684\uff08\u4f7f\u7528\u9891\u7387\u4f4e\uff0c\u53ef\u80fd\u51e0\u5929\u6216\u8005\u51e0\u5468\u7528\u4e00\u6b21\uff09\uff0c\u6211\u5e0c\u671b\u80fd\u5728\u6301\u7eed\u591a\u957f\u65f6\u95f4\u6ca1\u6709\u8bbf\u95ee\u5bb9\u5668\u540e\uff0c\u5c06\u5bb9\u5668\u9500\u6bc1\u6216\u8005\u7c7b\u4f3c\u4f11\u7720\uff0c\u80fd\u91ca\u653e\u8d44\u6e90\u5c31\u884c\u3002\u5728\u4e0b\u4e00\u6b21\u8bbf\u95ee\u7684\u65f6\u5019\uff0c\u81ea\u52a8\u62c9\u8d77\u5bb9\u5668\uff08\u53ef\u4ee5\u63a5\u53d7\u542f\u52a8\u65f6\u95f4\u7a0d\u957f\u4e00\u4e9b\uff09\u3002\u6709\u70b9\u7c7b\u4f3c\u4e8e\u5f39\u6027\u6269\u7f29\u5bb9\uff0c\u4f46\u9700\u8981\u7f29\u5bb9\u5230 0 \u3002\u6211\u73b0\u5728\u662f\u5728\u98de\u725b\u4e0a\u7528 docker compose \u90e8\u7f72\u7684\u5bb9\u5668\uff0c\u6682\u65f6\u6ca1\u770b\u5230\u4ec0\u4e48\u597d\u65b9\u6cd5</p>\n", 
      "date_published": "2025-04-28T02:22:33+00:00", 
      "title": "\u6709\u6ca1\u6709\u8ba9 docker \u5bb9\u5668\u4f11\u7720\u7684\u65b9\u6cd5", 
      "id": "https://www.v2ex.com/t/1128566"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/fzdoudou", 
        "name": "fzdoudou", 
        "avatar": "https://cdn.v2ex.com/gravatar/46bb2eed28f767cd5a284ad3ccd4f294?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1128044", 
      "date_modified": "2025-04-25T09:47:15+00:00", 
      "content_html": "crud javaer \u4e00\u679a\uff0c\u5e73\u5e38\u53ea\u4f1a\u5199 CRUD \u4e1a\u52a1\u4ee3\u7801\uff0c\u83dc\u9e1f\u4e00\u679a\uff0c\u865a\u5fc3\u8bf7\u6c42\u5404\u4f4d\u5927\u4f6c\u3002\u4ece\u6765\u6ca1\u6709\u53bb\u7814\u7a76\u8fc7\u751f\u4ea7\u73af\u5883\u90e8\u7f72\u7684\u6d41\u7a0b\uff0c\u73b0\u5728\u6709\u4e2a\u5c0f\u9879\u76ee\u60f3\u8981\u90e8\u7f72\u5230\u963f\u91cc\u4e91\u53bb\uff0c\u6709\u5f88\u591a\u7591\u95ee\u3002\u76ee\u524d\u5df2\u7ecf\u4e70\u4e86\u4e00\u53f0\u963f\u91cc\u4e91\u670d\u52a1\u5668 2C4G 5M \u56fa\u5b9a\u5e26\u5bbd 80G \u4e91\u76d8\u3002<br />\u9879\u76ee\u80cc\u666f<br />1 \u3001Java \u540e\u7aef\u670d\u52a1\u4e00\u4e2a\uff0cB \u7aef\u7ba1\u7406\u540e\u53f0\u4e00\u4e2a\uff0cC \u7aef\u4e00\u4e2a<br />2 \u3001\u4f7f\u7528\u5230\u4e86 jdk17,redis,rabbitmq,mysql \u8fd9\u4e9b\u57fa\u7840\u7684\u4e2d\u95f4\u4ef6,\u9879\u76ee\u6784\u5efa\u4f7f\u7528 maven,nginx \u505a\u53cd\u5411\u4ee3\u7406<br />3 \u3001\u524d\u671f\u53ea\u662f\u9a8c\u8bc1\u4e1a\u52a1\u6d41\u7a0b\uff0c\u8dd1\u8d77\u6765\u540e\u53ef\u80fd\u9700\u8981\u6269\u5bb9\u670d\u52a1\u5668\u505a\u96c6\u7fa4<br />4 \u3001\u6709\u8ba9 ChatGPT \u7ed9\u6211\u68b3\u7406\u6d41\u7a0b\uff0c\u524d\u9762\u8bb2\u7684\u633a\u597d\u7684\uff0c\u4f46\u662f\u6211\u7591\u95ee\u8d8a\u591a\u53d1\u73b0\u5b83\u4f1a\u6709\u70b9\u4e0d\u8bb0\u5f97\u6211\u4e4b\u524d\u7684\u80cc\u666f\uff0c\u7ecf\u5e38\u505a\u4e00\u4e9b\u7ed3\u679c\u4e0d\u4e00\u6837\u7684\u8f93\u51fa<br />\u7591\u95ee<br />1 \u3001\u6700\u5927\u7684\u7591\u95ee\u5c31\u662f\u5bf9\u4f7f\u7528 docker \u8fd8\u662f\u76f4\u63a5\u5728\u5bbf\u4e3b\u673a\u90e8\u7f72\u4e00\u76f4\u7ea0\u7ed3\u4e0d\u5b9a\uff0c\u5f52\u6839\u5230\u5e95\u8fd8\u662f\u6211\u4ece\u6765\u6ca1\u6709\u7528\u8fc7 docker \uff0c\u4e00\u76f4\u770b\u522b\u4eba\u8bf4 docker \u90e8\u7f72\u975e\u5e38\u65b9\u4fbf\uff0c\u6240\u4ee5\u5c31\u60f3\u8bd5\u8bd5\u770b\u3002\u4f46\u662f\u6211\u5728\u8bd5\u7528\u670d\u52a1\u5668\u8fb9\u5b66\u4e60 docker \u8fb9\u90e8\u7f72\uff0c\u611f\u89c9\u4e5f\u6ca1\u6709\u60f3\u8c61\u7684\u90a3\u4e48\u65b9\u4fbf\u3002\u6240\u4ee5\u60f3\u95ee\u4e0b\u5bf9\u4e8e\u6211\u8fd9\u79cd\u60c5\u51b5\u4ee5\u53ca\u672a\u6765\u7684\u53d1\u5c55\u65b9\u5411\u662f\u5426\u9700\u8981\u7528 docker<br />2 \u3001\u662f\u5426\u4e00\u5f00\u59cb\u5c31\u8981\u4e0a RDS \u4e91\u6570\u636e\u5e93\uff0c\u5982\u679c\u4e0a\u4e86\u4ee5\u540e\u5b83\u8ddf docker \u662f\u600e\u4e48\u8fde\u63a5\u7684\uff0cmysql \u90e8\u7f72\u5728\u5bbf\u4e3b\u673a\u4f1a\u6709\u4e22\u5931\u6570\u636e\u7684\u98ce\u9669\u5417<br />3 \u3001\u5982\u679c\u4f7f\u7528\u4e86 docker \uff0c\u6211\u7684\u4ee3\u7801\u5728\u672c\u5730\u6539\u5b8c\u5982\u4f55\u6700\u5feb\u7684\u90e8\u7f72\u4e0a\u53bb\uff0c\u73b0\u5728\u4e0d\u8003\u8651\u7528 Jenkins \uff0c\u4e00\u4e2a\u4eba\u7cbe\u529b\u73b0\u5728\u8fd8\u4e0d\u591f<br />4 \u3001\u8fd9\u6837\u4e00\u53f0\u670d\u52a1\u5668\u80fd\u652f\u6491\u7684\u8d77\u591a\u5927\u7684\u4e1a\u52a1\u91cf\uff0c\u5982\u679c\u4e00\u5929\u6709\u51e0\u5341\u4e07\u8bf7\u6c42\uff0c\u662f\u5426\u6491\u5f97\u4f4f", 
      "date_published": "2025-04-25T07:41:11+00:00", 
      "title": "\u751f\u4ea7\u73af\u5883\u90e8\u7f72\u7591\u95ee", 
      "id": "https://www.v2ex.com/t/1128044"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/datadump", 
        "name": "datadump", 
        "avatar": "https://cdn.v2ex.com/avatar/373a/9420/284506_large.png?m=1724288412"
      }, 
      "url": "https://www.v2ex.com/t/1125338", 
      "date_modified": "2025-04-14T09:59:30+00:00", 
      "content_html": "<p>\u9ed8\u8ba4\u7684 latest \u603b\u662f\u6709\u4e9b\u62c5\u5fc3\uff1a\u6bd4\u5982\u6302\u8f7d\u7684\u6570\u636e\u6587\u4ef6\u683c\u5f0f\u53d8\u52a8\u8f83\u5927\uff0c\u4ee5\u540e\u79fb\u52a8\u6570\u636e\u5230\u5176\u5b83\u670d\u52a1\u5668\u5c31\u4f1a\u6709\u517c\u5bb9\u6027\u95ee\u9898\u3002</p>\n<p>run \u7684\u65f6\u5019\u56fa\u5b9a\u4e00\u4e2a\u7248\u672c\u662f\u4e0d\u662f\u597d\u4e60\u60ef\uff1f</p>\n", 
      "date_published": "2025-04-14T06:50:21+00:00", 
      "title": "\u8fd0\u884c docker \u5bb9\u5668\u9700\u8981\u6307\u5b9a\u4e00\u4e2a\u7248\u672c\u5417", 
      "id": "https://www.v2ex.com/t/1125338"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/superdotcom", 
        "name": "superdotcom", 
        "avatar": "https://cdn.v2ex.com/avatar/9445/049c/202434_large.png?m=1761465916"
      }, 
      "url": "https://www.v2ex.com/t/1121607", 
      "date_modified": "2025-03-27T23:56:21+00:00", 
      "content_html": "<p>docker run hello-world\nUnable to find image 'hello-world:latest' locally\ndocker: Error response from daemon: Get \"<a href=\"https://registry-1.docker.io/v2/\" rel=\"nofollow\">https://registry-1.docker.io/v2/</a>\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)</p>\n<p>Run 'docker run --help' for more information</p>\n", 
      "date_published": "2025-03-27T12:46:27+00:00", 
      "title": "\u5c0f\u767d\u8bf7\u6559 docker \u5b89\u88c5\u540e\u51fa\u73b0\u7684\u95ee\u9898", 
      "id": "https://www.v2ex.com/t/1121607"
    }
  ]
}