{"id":2438,"date":"2023-11-30T14:06:30","date_gmt":"2023-11-30T06:06:30","guid":{"rendered":"https:\/\/blog.kingsbestone.com\/?p=2438"},"modified":"2023-12-01T10:22:48","modified_gmt":"2023-12-01T02:22:48","slug":"%e3%80%90%e5%ae%89%e8%a3%85%e6%95%99%e7%a8%8b%e3%80%91apache-guacamole_docker-compose","status":"publish","type":"post","link":"https:\/\/blog.kingsbestone.com\/?p=2438","title":{"rendered":"\u3010\u5b89\u88c5\u6559\u7a0b\u3011apache guacamole docker-compose"},"content":{"rendered":"<p><span style=\"font-family: 'comic sans ms', sans-serif;\">Apache Guacamole \u662f\u4e00\u4e2a\u53ef\u4ee5\u901a\u8fc7web\u6d4f\u89c8\u5668\u7684\u65b9\u5f0f\u63a7\u5236 VNC\u3001Telnet\u3001SSH\u3001RDP\u3001Kubernetes \u7684\u670d\u52a1\u3002\u53ea\u8981\u4f60\u7684\u7535\u8111\u6709\u6d4f\u89c8\u5668\u5373\u53ef\u8bbf\u95ee\u5e76\u63a7\u5236\u54ea\u4e9b\u670d\u52a1\u3002<\/span><\/p>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">\u8fd9\u4e2a\u670d\u52a1\u5206\u4e09\u4e2a\u90e8\u5206\uff1a<\/span><\/p>\n<ul>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">guacamole\uff1a\u8d1f\u8d23web\u524d\u7aef\u9875\u9762<\/span><\/li>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">guacd\uff1a\u8d1f\u8d23\u540e\u7aef\uff0c\u5c06\u5404\u79cd\u534f\u8bae\u8f6c\u5316\u4e3aweb\u517c\u5bb9\u7684\u683c\u5f0f<\/span><\/li>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">mysql\uff1a\u6570\u636e\u5e93\u8d1f\u8d23\u5b58\u50a8\u6570\u636e<\/span><\/li>\n<\/ul>\n<hr \/>\n<h1><span style=\"font-family: 'comic sans ms', sans-serif;\">\u4e00\u3001\u5b89\u88c5<\/span><\/h1>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">1.\u90e8\u7f72guacamole\u7684docker-compose\u6587\u4ef6\uff1a<\/span><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">version: '3'\r\nservices:\r\n  guacamole-mysql:\r\n    image: mysql:8.0.33-debian\r\n    container_name: guacamole-mysql\r\n    hostname: guacamole-mysql\r\n    restart: always\r\n    networks:\r\n      - internal\r\n    environment:\r\n      - PUID=1000\r\n      - PGID=1000\r\n      - TZ=Asia\/Shanghai\r\n      - LANG=en_US.UTF-8\r\n      - MYSQL_ROOT_PASSWORD=Admin@000\r\n      - MYSQL_DATABASE=guacamole \r\n      - MYSQL_USER=guacamole\r\n      - MYSQL_PASSWORD=guacamole@000\r\n    volumes:\r\n      - \/home\/docker\/guacamole\/mysql\/data:\/var\/lib\/mysql\r\n      - \/home\/docker\/guacamole\/mysql\/conf.d:\/etc\/mysql\/conf.d\r\n      - \/home\/docker\/guacamole\/mysql\/logs:\/var\/log\/mysql\r\n    command: \r\n      - mysqld\r\n      - --character-set-server=utf8mb4\r\n      - --collation-server=utf8mb4_bin\r\n      \r\n  guacamole-phpmyadmin:\r\n    image: lscr.io\/linuxserver\/phpmyadmin:latest\r\n    container_name: guacamole-phpmyadmin\r\n    hostname: guacamole-phpmyadmin\r\n    restart: always\r\n    depends_on:\r\n      - guacamole-mysql\r\n    networks:\r\n      - internal\r\n    environment:\r\n      - PUID=1000\r\n      - PGID=1000\r\n      - TZ=Asia\/Shanghai\r\n      - PMA_ARBITRARY=0\r\n      - PMA_HOST=guacamole-mysql\r\n    volumes:\r\n      - \/home\/docker\/guacamole\/phpmyadmin\/config:\/config\r\n  \r\n  guacd:\r\n    image: guacamole\/guacd\r\n    container_name: guacd\r\n    hostname: guacd\r\n    restart: always\r\n    ports:\r\n      - \"4822:4822\"\r\n    networks:\r\n      - internal\r\n    environment:\r\n      - TZ=Asia\/Shanghai\r\n\r\n  guacamole:\r\n    image: guacamole\/guacamole\r\n    container_name: guacamole\r\n    hostname: guacamole\r\n    restart: always\r\n    depends_on:\r\n      - guacamole-mysql\r\n      - guacd\r\n    ports:\r\n      - \"8080:8080\"\r\n    networks:\r\n      - internal\r\n    environment:\r\n      TZ: Asia\/Shanghai\r\n      GUACD_HOSTNAME: guacd\r\n      GUACD_PORT: 4822\r\n      MYSQL_HOSTNAME: guacamole-mysql\r\n      MYSQL_PORT: 3306\r\n      MYSQL_DATABASE: guacamole\r\n      MYSQL_USER: guacamole\r\n      MYSQL_PASSWORD: guacamole@000\r\n\r\nnetworks:\r\n  internal:\r\n    external: true\r\n<\/pre>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">\u5176\u4ed6\u8bf4\u660e\uff1a<\/span><\/p>\n<ul>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u4e0a\u9762yaml\u6587\u4ef6\u662f\u8981\u521b\u5efa\u4e00\u4e2a\u6865\u63a5\u7684docker\u7f51\u7edc\u7684<\/span><\/li>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u8bb0\u5f97\u6dfb\u52a0\u4e00\u4e2aNGINX\u53cd\u5411\u4ee3\u7406<\/span><\/li>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u9875\u9762\u8bbf\u95ee\u7aef\u53e3\uff1a8080\/tcp<\/span><\/li>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u7531\u4e8e\u662fJAVA\u7a0b\u5e8f\uff0c\u542f\u52a8\u4f1a\u6bd4\u8f83\u6162\u53ef\u80fd\u9700\u8981\u7b49\u5f8510min<\/span><\/li>\n<\/ul>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">2.\u4e0b\u8f7d\u6570\u636e\u5e93\uff1a<\/span><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">docker run --rm guacamole\/guacamole \/opt\/guacamole\/bin\/initdb.sh --mysql &gt; initdb.sql<\/pre>\n<ul>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u5b83\u4f1a\u521b\u5efa\u4e00\u4e2a\u5bb9\u5668\uff0c\u7136\u540e\u4ece\u5bb9\u5668\u5bfc\u51fa\u6570\u636e\u5e93\u540e\u81ea\u52a8\u5220\u9664\u5bb9\u5668\u3002<\/span><\/li>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u6570\u636e\u5e93\u9ed8\u8ba4\u4f1a\u88ab\u4fdd\u5b58\u5728\u5f53\u524d\u5de5\u4f5c\u76ee\u5f55<\/span><\/li>\n<\/ul>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">3.\u5bfc\u5165\u6570\u636e\u5e93<\/span><\/p>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">\u767b\u5f55phpmyadmin\uff0c\u7136\u540e\u5bfc\u5165\u521a\u521a\u4e0b\u8f7d\u7684\u6570\u636e\u5e93\u6587\u4ef6\u5373\u53ef\u5b8c\u6210\u3002<\/span><\/p>\n<ul>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u5bfc\u5165guacamole\u6570\u636e\u5e93\u5373\u53ef\u3002<\/span><\/li>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u9ed8\u8ba4\u5bb9\u5668\u90e8\u7f72\u597d\u540e\u4f1a\u81ea\u52a8\u521b\u5efa\u6570\u636e\u5e93\u7528\u6237\u548c\u6743\u9650\u7684<\/span><\/li>\n<\/ul>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">4.\u6253\u5f00\u7f51\u5740\u67e5\u770b\u670d\u52a1\u662f\u5426\u90e8\u7f72\u6210\u529f<\/span><\/p>\n<ul>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u7f51\u5740\uff1ahttp:\/\/ip:8080\/guacamole<\/span><\/li>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u9ed8\u8ba4\u8d26\u6237\uff1aguacadmin\u00a0 \u9ed8\u8ba4\u5bc6\u7801\uff1aguacadmin<\/span><\/li>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u5982\u679c\u662f\u89e3\u6790\u4e86\u57df\u540d\u66ff\u6362\u4e3a\u57df\u540d\uff0c\u52a0\u4e86\u8bc1\u4e66\u6539https\u5373\u53ef<\/span><\/li>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u670d\u52a1\u542f\u52a8\u8f83\u6162\u53ef\u80fd\u9700\u8981\u7b49\u5f8510min\u4ee5\u4e0a\u3002<\/span><\/li>\n<\/ul>\n<h1><span style=\"font-family: 'comic sans ms', sans-serif;\">\u4e8c\u3001\u4e2d\u6587\u4e71\u7801\u4fee\u590d<\/span><\/h1>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">1.\u4e2d\u6587\u5b57\u4f53\u5bfc\u5165<\/span><\/p>\n<ul>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u7531\u4e8e\u8fd9\u4e2a\u8f6f\u4ef6\u5f00\u53d1\u7684\u65f6\u5019\u538b\u6839\u6ca1\u8003\u8651\u4e2d\u56fd\u7528\u6237\uff0c\u6240\u4ee5\u6ca1\u4e2d\u6587\uff0c\u5f97\u81ea\u5df1\u60f3\u529e\u6cd5\u52a0\u4e2a\u4e2d\u6587\u5b57\u4f53\u5305\u4e0a\u53bb\u3002<\/span><\/li>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u4e2d\u6587\u5b57\u4f53\u5305\u4e0b\u8f7d\uff1a<a href=\"https:\/\/blog.kingsbestone.com\/wp-content\/uploads\/2023\/11\/\u7b80\u4f53\u4e2d\u6587.zip\" target=\"_blank\" rel=\"noopener\">\u70b9\u51fb\u4e0b\u8f7d<\/a><\/span><\/li>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u53ea\u9700\u8981\u5bfc\u5165\u8fd9\u4e2a\u5bb9\u5668\u5373\u53ef\uff1aguacd<\/span><\/li>\n<\/ul>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">2.\u5c06\u5de5\u4f5c\u76ee\u5f55\u4e0b\u7684\u5b57\u4f53\u6587\u4ef6\u5bfc\u5165\u5230guacd\u5bb9\u5668\u7684 \/usr\/share\/fonts\/ \u76ee\u5f55\u4e0b\u9762<\/span><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">docker cp SIMHEI.TTF guacd:\/usr\/share\/fonts\/<\/pre>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">3.\u8fdb\u5165guacd\u5bb9\u5668\u547d\u4ee4\u884c\uff1a<\/span><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">docker exec -it guacd sh<\/pre>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">4.\u68c0\u67e5\u662f\u5426\u5b58\u5728\u8fd9\u4e2a\u6587\u4ef6\uff1aSIMHEI.TTF<\/span><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">cd \/usr\/share\/fonts\/\r\nls<\/pre>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">5.\u5982\u679c\u5b58\u5728\uff0c\u8f93\u5165 exit\u9000\u51fa\u5373\u53ef\u3002<\/span><\/p>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">6.\u767b\u5f55\u670d\u52a1\u7f51\u9875\u7aef\uff0c\u518d\u6bcf\u6b21\u6dfb\u52a0\u65b0\u8fde\u63a5\u65f6\u9009\u62e9 \u663e\u793a&#8211;&gt;\u5b57\u4f53\u540d\uff1aSIMHEI<\/span><\/p>\n<ul>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u8fd9\u4e2a\u540d\u5b57\u8981\u548c\u4f60\u4e0a\u4f20\u7684\u6587\u4ef6\u540d\u5b57\u4e00\u76f4\u5373\u53ef<\/span><\/li>\n<li><span style=\"font-family: 'comic sans ms', sans-serif;\">\u53ea\u80fd\u9002\u914dKubernetes\u3001SSH\u3001Telnet\u7684\u4e2d\u6587\u5b57\u4f53\u4e71\u7801\u95ee\u9898\u3002<\/span><\/li>\n<\/ul>\n<hr \/>\n<p><span style=\"font-family: 'comic sans ms', sans-serif;\">end&#8230;<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Apache Guacamole \u662f\u4e00\u4e2a\u53ef\u4ee5\u901a\u8fc7web\u6d4f\u89c8\u5668\u7684\u65b9\u5f0f\u63a7\u5236 VNC\u3001Telnet\u3001SSH\u3001RDP\u3001Kubernetes \u7684\u670d\u52a1\u3002\u53ea\u8981\u4f60\u7684\u7535\u8111\u6709\u6d4f\u89c8\u5668\u5373\u53ef\u8bbf\u95ee\u5e76\u63a7\u5236\u54ea\u4e9b\u670d\u52a1\u3002 \u8fd9\u4e2a\u670d\u52a1\u5206\u4e09\u4e2a\u90e8\u5206\uff1a guacamole\uff1a\u8d1f\u8d23web\u524d\u7aef\u9875\u9762 guacd\uff1a\u8d1f\u8d23\u540e\u7aef\uff0c\u5c06\u5404\u79cd\u534f\u8bae\u8f6c\u5316\u4e3aweb\u517c\u5bb9\u7684\u683c\u5f0f mysql\uff1a\u6570\u636e &#8230; <\/p>\n<p class=\"read-more-container\"><a title=\"\u3010\u5b89\u88c5\u6559\u7a0b\u3011apache guacamole docker-compose\" class=\"read-more button\" href=\"https:\/\/blog.kingsbestone.com\/?p=2438#more-2438\" aria-label=\"\u66f4\u591a \u3010\u5b89\u88c5\u6559\u7a0b\u3011apache guacamole docker-compose\">\u67e5\u770b\u66f4\u591a<\/a><\/p>\n","protected":false},"author":1,"featured_media":212,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[87,4],"tags":[99,98],"_links":{"self":[{"href":"https:\/\/blog.kingsbestone.com\/index.php?rest_route=\/wp\/v2\/posts\/2438"}],"collection":[{"href":"https:\/\/blog.kingsbestone.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.kingsbestone.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.kingsbestone.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.kingsbestone.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2438"}],"version-history":[{"count":20,"href":"https:\/\/blog.kingsbestone.com\/index.php?rest_route=\/wp\/v2\/posts\/2438\/revisions"}],"predecessor-version":[{"id":2459,"href":"https:\/\/blog.kingsbestone.com\/index.php?rest_route=\/wp\/v2\/posts\/2438\/revisions\/2459"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.kingsbestone.com\/index.php?rest_route=\/wp\/v2\/media\/212"}],"wp:attachment":[{"href":"https:\/\/blog.kingsbestone.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2438"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.kingsbestone.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2438"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.kingsbestone.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2438"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}