{"id":4881,"date":"2024-06-19T15:54:43","date_gmt":"2024-06-19T07:54:43","guid":{"rendered":"https:\/\/benson80.eu.org\/?p=4881"},"modified":"2024-06-19T15:58:29","modified_gmt":"2024-06-19T07:58:29","slug":"%e5%ae%9d%e5%a1%94%e9%9d%a2%e6%9d%bf%e4%b8%80%e7%9b%b4%e6%8f%90%e7%a4%ba%ef%bc%9a%e5%bd%93%e5%89%8d%e6%9c%aa%e5%ae%89%e8%a3%85docker%e6%88%96docker-compose%e9%97%ae%e9%a2%98","status":"publish","type":"post","link":"https:\/\/benson80.eu.org\/?p=4881","title":{"rendered":"\u5b9d\u5854\u9762\u677f\u4e00\u76f4\u63d0\u793a\uff1a\u5f53\u524d\u672a\u5b89\u88c5docker\u6216docker-compose\u95ee\u9898"},"content":{"rendered":"\n<p>\u5982\u679c\u7cfb\u7edf\u5df2\u7ecf\u5b89\u88c5docker\uff0c\u4f46\u662f\u4f9d\u7136\u51fa\u73b0\u8fd9\u4e2a\u63d0\u793a\uff0c\u53ef\u4ee5\u6309\u7167\u4ee5\u4e0b\u6b65\u9aa4\u4fee\u6539\uff0c\u5df2\u7ecf\u9a8c\u8bc1\u6210\u529f<\/p>\n\n\n\n<p>1\u3001\u70b9\u51fb\u5de6\u4fa7\u6587\u4ef6\uff0c\u7136\u540e\u9009\u62e9\u8fdb\u5165\u76ee\u5f55\/www\/server\/panel\/class\/projectModel\/bt_docker<\/p>\n\n\n\n<p>\u53cc\u51fb\u7f16\u8f91<strong>dk_setup.py<\/strong>\u6587\u4ef6<\/p>\n\n\n\n<p>2\u3001\u66ff\u6362\u4ee5\u4e0b\u51fd\u6570<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>def check_docker_program(self):\n    \"\"\"\n    \u68c0\u67e5docker\u548cdocker-compose\u662f\u5426\u5df2\u7ecf\u5b89\u88c5\n    :return:\n    \"\"\"\n    docker = \"\/usr\/bin\/docker\"\n    docker_compose = \"\/usr\/bin\/docker-compose\"\n    if os.path.exists(docker_compose):\n        pass\n    else:\n        dk_compose_list = &#91;\"\/usr\/libexec\/docker\/cli-plugins\/docker-compose\", \"\/usr\/local\/docker-compose\"]\n        for i in dk_compose_list:\n            if os.path.exists(i):\n                public.ExecShell(\"ln -sf {} {}\".format(i, docker_compose))\n    if  os.path.exists(docker) or  os.path.exists(docker_compose):\n        return True\n    return False<\/code><\/pre>\n\n\n\n<p>\u6ce8\u610f\u4ee3\u7801\u5bf9\u9f50\uff0c\u4fdd\u5b58\u4ee3\u7801\u5e76\u5173\u95ed\u6587\u4ef6\u3002<\/p>\n\n\n\n<p>3\u3001\u91cd\u542f\u5b9d\u5854\u9762\u677f\u5373\u53ef<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5982\u679c\u7cfb\u7edf\u5df2\u7ecf\u5b89\u88c5docker\uff0c\u4f46\u662f\u4f9d\u7136\u51fa\u73b0\u8fd9\u4e2a\u63d0\u793a &hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[20,16],"tags":[],"class_list":["post-4881","post","type-post","status-publish","format-standard","hentry","category-docker","category-16"],"_links":{"self":[{"href":"https:\/\/benson80.eu.org\/index.php?rest_route=\/wp\/v2\/posts\/4881","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/benson80.eu.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/benson80.eu.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/benson80.eu.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/benson80.eu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4881"}],"version-history":[{"count":5,"href":"https:\/\/benson80.eu.org\/index.php?rest_route=\/wp\/v2\/posts\/4881\/revisions"}],"predecessor-version":[{"id":4886,"href":"https:\/\/benson80.eu.org\/index.php?rest_route=\/wp\/v2\/posts\/4881\/revisions\/4886"}],"wp:attachment":[{"href":"https:\/\/benson80.eu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4881"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/benson80.eu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4881"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/benson80.eu.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4881"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}