# 建立guacamole remote desktop proxy服務  adopted from Guacamole Manual ## build in docker 需要以下docker image(可從dockerhub下載) [guacamole/guacamole:latest](https://hub.docker.com/r/guacamole/guacamole) [guacamole/guacd:latest](https://hub.docker.com/r/guacamole/guacd) [library/mariadb:latest](https://hub.docker.com/_/mariadb) 為了簡化流程採用docker-compose來架設,所以要安裝docker-compose。 Compose can also be run inside a container ``` sudo curl -L --fail https://github.com/docker/compose/releases/download/1.28.0/run.sh -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose ``` docker-compose.yml [recipe託管](https://github.com/acyang/guacamole) ``` version: '3.8' services: initialized_db: image: guacamole/guacamole:latest command: ["/bin/sh", "-c", "test -e /init/initdb.sql && echo 'initialize script already exists' || /opt/guacamole/bin/initdb.sh --mysql > /init/initdb.sql" ] volumes: - ./init:/init mariadb: container_name: mariadb hostname: mariadb image: library/mariadb:latest restart: always environment: MYSQL_ROOT_PASSWORD: mysql_root_passwd MYSQL_DATABASE: guacamole_db MYSQL_USER: guacamole_user MYSQL_PASSWORD: guacamole_passwd volumes: - ./init:/docker-entrypoint-initdb.d:ro - ./data:/var/lib/mysql:rw depends_on: - initialized_db guacd: container_name: guacd hostname: guacd image: guacamole/guacd:latest restart: always environment: GUACD_LOG_LEVEL: debug guacamole: container_name: guacamole hostname: guacamole image: guacamole/guacamole:latest restart: always links: - guacd - mariadb depends_on: - guacd - mariadb ports: - "8080:8080" environment: GUACD_HOSTNAME: guacd MYSQL_HOSTNAME: mariadb MYSQL_DATABASE: guacamole_db MYSQL_USER: guacamole_user MYSQL_PASSWORD: guacamole_passwd ``` ## build native 待補充 ## config guacamole 預設管理帳號是guacadmin/guacadmin,首次登入後盡快修改。 ### add new connection 從右上角Setting進入新增  在上方navbar選擇connections  選擇New connection  VNC的場合,需要填入的就只有PARAMETER中的Network和Authentication  RDP的場合,需要填入的就只有PARAMETER中的Network和Authentication, 還需要勾選"Ignore server certificate:"  PS. 需要檢查 0. VNC/RDP的port 1. OS的防火牆 2. 虛擬機的安全性群組 3. ### add new user 在上方navbar選擇Users  選擇New User  設定用戶名稱和密碼,再來決定permissions,最後決定該用戶可以看到那些已定義好的連線。  ## recipe托管至github ### 建立local repo ``` cd guacamole git init echo "init/" > .gitignore echo "data/" >> .gitignore git add . git commit -m "First Commit." ``` ### 建立remote repo 還不會從CLI和API來建立,暫時先以人工方式在github建立空的repo。 關鍵字"Personal Access Tokens","GitHub API" ### push to remote ``` git remote add origin git@github.com:acyang/guacamole.git git branch -M main git push -u origin main ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up