Knowledge Share
Managing Dockers Containers with Yacht over HTTPS
Yacht is a web GUI to manage Docker containers and make deployments and management of all resources very easy [ Link ].
See also the post about Portainer [ Link ].
See also the post about CasaOS [ Link ].
Installation:
Navigate on your browser to http://127.0.0.1:8000/ and enter the default credentials: [email protected] and pass .
Immediately change the default password and add the following template:
This template will list many applications that can be deployed with a single click or customized.
It is highly recommended to use SSL/TLS if you are accessing Yacht over a local network and essential if remotely over the internet.
On a host machine running Ubuntu 20.04 install:
For older version of Ubuntu:
It is always good to change or clean the default webpage located at /var/www/html/ .
Edit the site configuration /etc/nginx/sites-available/default and type the domain address as shown below:
Test and restart NGINX and run the Certbot:
Respond to prompts and chose to Redirect any HTTP traffic to HTTPS.
Back to the browser change the address to https://example.com (of course replace the example).
Make sure the certificate will be renewed automatically by adding this line to the crontab -e of the root on the host machine:
The command above will try to renew once a week.
Remove the container and run it again, now mounting the certificate folder in it:
Any preview configuration was preserved in the volume created earlier.
Get a shell in the container by issuing:
Edit the NGINX configuration file /etc/nginx/nginx.conf and add the following bolded lines replacing the domain.com :
Test the configuration and reload the service.
Teste accessing it again with your browser but using http S ://example.com:8000
Developer Tools
Engage with us.
- Control Panels 9
- Databases 10
- Development 32
- Media and Entertainment 11
- Monitoring 4
- Productivity 15
- Security 18
- Akaunting 1
- Ant Media 2
- Chevereto 1
- Easypanel 1
- FileCloud Community 1
- Kali Linux 1
- LiteSpeed Technologies 6
- Liveswitch 1
- MagicSpam 1
- MainConcept 5
- Microweber 1
- Nextcloud 1
- NirvaShare 1
- OnlyOffice 1
- Peppermint Lab 1
- Project Jupyter 1
- Rabbit Company 1
- SelfHostedPro 1
- ServerWand 1
- Severalnines 1
- SimpleX Chat 1
- Superinsight 1
- Team Kepler 1
- VictoriaMetrics 1
Intuitive web interface for managing Docker containers .
Get a web interface for managing Docker containers with an emphasis on templating to provide easy deployments. The goal of Yacht is to make docker easy for anyone to use and manage. Templates, template variables, and an intuitive UI make that goal possible. Please note: Yacht is still in alpha and stability is not guaranteed. Learn more on the Yacht GitHub .
Yacht Options
You can configure your Yacht App by providing values for the following fields:
The email address for your Yacht login. The default is . . | |
The password for your Yacht login. . | |
Support for using Yacht with . | |
Yacht theme options: Default, RED, and OMV. |
Linode Options
After providing the App-specific options, provide configurations for your Linode server:
DESCRIPTION | |
---|---|
| Debian 11 and Ubuntu 22.04 LTS are supported by the Yacht Marketplace App, and it is pre-selected on the Linode creation page. |
The region where you would like your Linode to reside. In general, it’s best to choose a location that’s closest to you. For more information on choosing a DC, review the guide. You can also generate for a deeper look at the network routes between you and each of our data centers. Required. | |
Your Linode’s . You can use any size Linode for your ServerWand app. The Linode plan that you select should be appropriate for the amount of data transfer, users, storage, and other stress that may affect the performance of server. | |
The name for your Linode, which must be unique between all of the Linodes on your account. This name will be how you identify your server in the Cloud Manager’s Dashboard. | |
The primary administrative password for your Linode instance. This password must be provided when you log in to your Linode via SSH. The password must meet the complexity strength validation requirements for a strong password. Your root password can be used to perform any action on your server, so make it long, complex, and unique. |
Getting Started After Deployment
Access your Yacht App
- After Yacht has finished installing, you can access your Yacht instance by visiting your Linode’s IP address at port 8000 (for example, http://192.0.2.0:8000 ) in a web browser.
Caution: By default Yacht is not configured to use SSL, meaning that your login credentials will be sent over plain text. See Additional Steps for SSL for guidance on how to encrypt your connection.
Additional Steps for SSL
Since Yacht is not configured for SSL, some additional steps are required to encrypt your connection. The following example uses self-signed SSL certificates, but this can also work with a commercially signed or Let’s Encrypt certificates if the server is configured with a FQDN.
1. Login to the Linode’s IP over `ssh`. Replace `192.0.2.0` with your Linode’s IP address. ssh [email protected]
2. Create two local directories for SSL and the modified `nginx.conf`. mkdir -p local/nginx mkdir local/ssl
3. Create the self-signed certificate and key. openssl req -new -newkey rsa:4096 -x509 -sha256 -days 365 -nodes -out yacht.crt -keyout yacht.key You should see output similar to the following:
4. Move the newly generated certificate and key into the `local/ssl` directory.
5. Dump the Yacht `nginx.conf` to the `local/nginx` directory. docker exec -it yacht /bin/sh -c "cat /etc/nginx/nginx.conf" > local/nginx/nginx.conf
6. Open the local/nginx/nginx.conf file using vim or another text editor of your choice and locate the server block for port 8000 (around line 30). 7. Copy `local/nginx/nginx.conf` and `local/ssl` to the `/etc/nginx/` directory in the Yacht container, and then reload Nginx. docker cp local/nginx/nginx.conf yacht:/etc/nginx/ docker cp local/ssl yacht:/etc/nginx/ # remove ^M characters docker exec -it yacht /bin/sh -c "sed -ie 's/\r//g' /etc/nginx/nginx.conf" # reload nginx docker exec -it yacht /bin/sh -c "nginx -s reload"
Your browser may give warnings because the certificate is not signed by a Certificate Authority, and require you to add a security exception, but the connection is now encrypted. Please note: Yacht is still in alpha and is not recommended for production use. Learn more on the Yacht GitHub .
The Yacht Marketplace App was built for Linode by Selfhosted Pro For support regarding app deployment, contact Linode Support . For support regarding the tool or software itself, use the information in the sidebar to contact Selfhosted Pro.
Support Details
Supported by: Selfhosted Pro
Support URL: https://github.com/SelfhostedPro/Yacht/
Docs and Resources
How to Use Linode’s Marketplace Apps
Deploy Yacht with Marketplace Apps
Watch a Demo on YouTube
Yacht Documentation
Related Apps
Cloud native container registry for Kubernetes and more.
An open source tool to build and manage containers
Sign up for the “In the Node” Newsletter
Control Local Docker Containers From a Web Browser with Yacht
What is yacht.
Yacht is a web interface for managing docker containers with an emphasis on templating to provide one-click deployments of dockerized applications. Think of it like a decentralized app store for servers that anyone can make packages for. - https://yacht.sh/docs/
Installing Docker
- Log into the Linux based device
- Run the following commands in the terminal # install prerequisites sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg-agent -y # add docker gpg key curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - # add docker software repository sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" # install docker sudo apt install docker-ce docker-compose containerd.io -y # enable and start docker service sudo systemctl enable docker && sudo systemctl start docker # add the current user to the docker group sudo usermod -aG docker $USER # reauthenticate for the new group membership to take effect su - $USER
Running Yacht
- Now that Docker is installed, run the following commands to setup the Yacht Docker container and run it # create working directories mkdir ~/docker/yacht -p # run the yacht docker container docker run -d -p 8000:8000 -v /var/run/docker.sock:/var/run/docker.sock -v ~/docker/yacht:/config --restart unless-stopped selfhostedpro/yacht
- Once the Yacht container is downloaded and running, open a web browser and navigate to http://DNSorIP:8000
- Login with the username [email protected] and password pass
- Click Admin > User in the top right corner
- Select Change Password from the top navigation menu
- Enter and confirm a new password
- Optionally, change the username
- Click the Change User Info button to apply the changes
- Welcome to Yacht, Docker container management from a web browser
Documentation: https://github.com/SelfhostedPro/Yacht
A web interface for managing docker containers with an emphasis on templating to provide 1 click deployments. Think of it like a decentralized app store for servers that anyone can make packages for.
https://github.com/SelfhostedPro/Yacht Yacht Yacht is a container management UI with a fo...
Search Results
Getting Started
Beginners guide .
This guide will take you through setting up Yacht, adding your first template, and deploying your first app.
Setting Up Yacht
Running Yacht is as simple as running the following two commands:
After that you can access Yacht on port 8000 on your server in a web browser.
- If you're using Yacht alongside portainer, you'll want to change the 8000 on the left of the : to 8001, then it will be available on that port on your host.
- If SELinux is enabled on the host, you'll need to pass the --privileged flag to docker when deploying Yacht.
Once you're at the login page you can login with the username [email protected] and the password pass .
Template Variables
We'll setup template variables so that if you're using a template built for Yacht, you'll be able to have all of your files mounted in the correct places.
Click on the Settings cog in the left sidebar and then click on Template Variables along the top.
Replace the paths on the right with where you want each variable to be mounted. (This will typically be in your file shares if you're using a NAS).
Add any additional Variables you would like and when you're done, hit save at the bottom.
Adding a Template
To add a template, click on the Folder icon in the left sidebar and then on "New Template". If you don't have a template added yet it'll recommend you add the one that I maintain for Yacht. Once you've entered a name and URL you'll click submit.
Now that you're on the "View Templates" page you can click on the template you added to see all the apps included with your template.
From the "View Templates" page you can also click on the 3 dots and from there you can update if there are any changes, view the template, or delete the template.
Deploying from a Template
Now that you have a template added let's deploy an application. Click on your template to view it. Then pick an app to deploy. You can click on view to see any details about the application.
Once you've got an app in mind click on deploy and you'll be taken to the deploy form. Everything should be filled out for you but double check that it all looks correct. Click on continue until you get to the last page and then click on Deploy.
Now you'll see your running app. You can click on it to view more detailed stats or click on the Arrow to the right of the name to perform an action with it.
- Beginners Guide
- Setting Up Yacht
- Template Variables
- Adding a Template
- Deploying from a Template
Navigation Menu
Search code, repositories, users, issues, pull requests..., provide feedback.
We read every piece of feedback, and take your input very seriously.
Saved searches
Use saved searches to filter your results more quickly.
To see all available qualifiers, see our documentation .
- Notifications You must be signed in to change notification settings
A web interface for managing docker containers with an emphasis on templating to provide 1 click deployments. Think of it like a decentralized app store for servers that anyone can make packages for.
hathalud/Yacht-templates-by-Hathakhm
Folders and files.
Name | Name | |||
---|---|---|---|---|
510 Commits | ||||
etc | etc | |||
Repository files navigation
Yacht is a container management UI with a focus on templates and 1-click deployments.
If the built in update button isn't working for you try the following command:
Installation:
Currently only linux has been verified as working but we are open to the idea of supporting windows eventually as well.
Keep in mind, this is an alpha so the risk of data loss is real and it may not be stable
Installation documentation can be found here .
Check out the getting started guide if this is the first time you've used Yacht: https://yacht.sh/docs/Installation/Getting_Started
Yacht is also available via the DigitalOcean marketplace:
Features So Far:
- Vuetify UI Framework
- Basic Container Management
- Template Framework
- Easy Template Updating
- Centralized settings for volume management and similar QOL functionality.
- Docker-Compose Compatibility
- Advanced Container Management (Edit/Modify)
Planned Features:
- Container Monitoring
- Easy access to container interfaces
- User Management
- Scheduled Jobs
If you want something that's not planned please open a feature request issue and we'll see about getting it added.
Templating:
Currently Yacht is compatible with portainer templates. You'll add a template url in the "Add Template" settings. The the template will be read, separated into apps, and imported into the database. The apps associated with the templates are linked via a db relationship so when the template is removed, so are the apps associated with it. We store the template url as well so we can enable updating templates with a button press.
We recommend starting with:
In templates you are able to define variables (starting with ! ) to have them automatically replaced by whatever variable the user has set in their server settings (ie. !config will be replaced by /yacht/AppData/Config by default).
Notes for ARM devices
If you're on arm and graphs aren't showing up add the following to your cmdline.txt:
Supported Environment Variables
You can utilize the following environment variables in Yacht. None of them are manditory.
Variable | Description |
---|---|
PUID | Set userid that the container will run as. |
PGID | Set groupid that the container will run as. |
SECRET_KEY | Setting this to a random string ensures you won't be logged out in between reboots of Yacht. |
ADMIN_EMAIL | This sets the email for the default Yacht user. |
DISABLE_AUTH | This disables authentication on the backend of Yacht. It's not recommended unless you're using something like Authelia to manage authentication. |
DATABASE_URL | If you want to have Yacht use a database like SQL instead of the built in sqlite on you can put that info here in the following format: |
COMPOSE_DIR | This is the path inside the container which contains your folders that have docker compose projects. ( ) |
MIT License
Code of conduct
Security policy.
- Python 25.4%
- JavaScript 12.1%
IMAGES
VIDEO
COMMENTS
A web interface for managing docker containers with an emphasis on templating to provide 1 click deployments. Think of it like a decentralized app store for servers that anyone can make packages for. - SelfhostedPro/Yacht
Yacht lets you focus on what apps you want to run instead of worrying about how to deploy them. Compose Support Out of The Box. Managing large docker projects has never been easier. Import compose projects you're already using or write new ones easily using the built in editor. Docs. Getting Started; Projects;
After that you can access Yacht on port 8000 on your server in a web browser. If you're using Yacht alongside portainer you'll want to change the 8000 on the left of the : to 8001, then it will be available on that port on your host.. Once you're at the login page you can login with the username [email protected] and the password pass.. Template Variables
Once OMV-Extras is installed you'll need to do the following steps: In OMV go to OMV-Extras -> Docker. Click on "Docker" and then "Install". (Optional) Click on advanced under "Yacht (Alpha)" and select the port you want to use. Once docker is installed click on "Yacht" and then "Install". Once it's installed you can use the button to open Yacht.
Yacht Alpha v0.0.7 Released! Notable Changes: Shipwright a new template builder is released (pre-alpha) Yacht is now a PWA and if published with SSL you'll be able to install it on most devices for easy access. API Key framework so now applications can interact with Yacht directly (found in user settings when auth is enabled).
A web interface for managing docker containers with an emphasis on templating to provide 1 click deployments. Think of it like a decentralized app store for servers that anyone can make packages for. - Beginners Guide · SelfhostedPro/Yacht Wiki
Using https and forcing SSL. Set the Yacht container to bridged network. Leave Nginx Proxy Manager on its default proxy network. Configure Nginx using the subdomain. The IP of the docker host (such as 192.168..x or equiv.). The docker port you set Yacht to such as 8000. Use http between the Nginx host and the Yacht container. Additional security:
It is highly recommended to use SSL/TLS if you are accessing Yacht over a local network and essential if remotely over the internet. On a host machine running Ubuntu 20.04 install: sudo apt install nginx sudo apt install certbot sudo apt-get install python3-certbot-nginx
Yacht provides elegant theme customization, templating, easy management of Docker resources (volumes, images, network), applications and projects. View a live demo and documentation on the Yacht website. Additional Steps for SSL. Since Yacht is not configured for SSL, some additional steps are required to encrypt your connection.
Login with the username [email protected] and password pass. Click Admin > User in the top right corner. Select Change Password from the top navigation menu. Enter and confirm a new password. Optionally, change the username. Click the Change User Info button to apply the changes. Welcome to Yacht, Docker container management from a web browser.
Features. Container templating compatibility (Portainer compatible) Basic container management. Easy template updating. Template Variables to allow for a one-click experience. Guided container deployment. Dashboard for monitoring all of your docker containers in one place. Docker-compose compatibility and editor. One click editing of containers.
In this post, I'll show you how to install Yacht on your Linux server. yacht is a web interface for managing Docker containers that offers an easy-to-use dashboard to monitor and manage your containers. Table of Contents: What is Yacht? Install Docker; Install Yacht; Change the default login credentials; Reset Yacht Password/Username(optional)
Dashboard for monitoring all of your docker containers in one place; ... Currently, Yacht is compatible with portainer templates. You'll add a template url in the "Add Template" settings. The template will be read, separated into apps, and imported into the database. The apps associated with the templates are linked via a db relationship so ...
A place to share, discuss, discover, assist with, gain assistance for, and critique self-hosted alternatives to our favorite web apps, web services, and online tools. Yacht (Container Management UI) Alpha is here! Hey guys, it's been a while since my last post here about this project. It's been through several re-writes (from flask to flask+Vue ...
Yacht. A web interface for managing docker containers with an emphasis on templating to provide 1 click deployments. Think of it like a decentralized app store for servers that anyone can make packages for.
After that you can access Yacht on port 8000 on your server in a web browser. If you're using Yacht alongside portainer, you'll want to change the 8000 on the left of the : to 8001, then it will be available on that port on your host.; If SELinux is enabled on the host, you'll need to pass the --privileged flag to docker when deploying Yacht.; Once you're at the login page you can login with ...
A web interface for managing docker containers with an emphasis on templating to provide 1 click deployments. Think of it like a decentralized app store for servers that anyone can make packages for. ... Notes for installing Docker and Yacht on WSL2 platform under Windows. If you're running under WSL2 inside Windows, because of the difference ...
I'm using docker on CoreOS, and the CoreOS machine trusts the needed SSL certificates, but the docker containers obviously only have the default. I've tried using docker run --entrypoint=/bin/bash to then add the cert and run update-ca-certificates, but this seems to permanently override the entry point.
The latest version of docker is recommended. Instructions for how to install it are available here. Edit this page. Previous « Intro. Next. Install Yacht » ...
Projects. Docker-compose projects are a container orchestration tool to help manage containers that need to talk to each other. Yacht provides an in browser docker-compose editor as well as a way to manage them easily via the projects tab in the yacht UI. The easiest way to get started is to find a project that you want to launch, then click on ...
SSLEngine on. # Activate SSL for proxy. SSLProxyEngine On. # Disable certificate verification in communication between host and container. SSLProxyVerify none. SSLProxyCheckPeerCN off. SSLProxyCheckPeerName off. SSLProxyCheckPeerExpire off. # Defines that The host will pass the Host: line from the incoming request to.
A web interface for managing docker containers with an emphasis on templating to provide 1 click deployments. Think of it like a decentralized app store for servers that anyone can make packages for. - hathalud/Yacht-templates-by-Hathakhm