Please read carefully
⚠️ Warning: It is your responsibility to ensure you protect your system from intruders/attacks. These commands and permissions are just examples used to get Cloudlog up and running and are not a guide on how to achieve a secure system. You should review these permissions after installation and make appropriate changes if you determine that finer-grained access control is needed.
⚠️ Warning: Docker support is highly experimental, you may run into different issues when updating your existing setup, manual intervention may be needed to align tables and/or config files to the new version.
Instructions
Altough this procedure is not fully recommended (as the image is statically build and you won't get automatic updates as described in the other installation methods), it is technically possible to create and instantiate a Docker Container with Cloudlog.
These steps are written for a Linux machine but can be easily ported to any system.
Setup using Portainer is also possible and highly recommended (easier maintenance, see below)
- If you already have an existing MySQL server reachable by your network you can directly skip to the
Execute Cloudlog
chapter - If you are a beginner and just want to have the Cloudlog software up and running in few steps please read here
Prerequirements
Docker engine
Please refer to the official Docker documentation
Docker compose
This plugin is usually included in Docker installations, if you need to set it up manually please refer to the Docker documentation
MySQL
- A MySQL server must be reachable by the Cloudlog container instance, this can be a container too, based on the Linux setup requirements a quick and easy solution is using the
mysql:5.7
image from Docker hub - If you already have a MySQL server in your local network please skip the following chapter
MySQL and PhpMyAdmin stack
If you don't have any MySQL server available on the network, a custom stack can be built containing both MySQL and PhpMyAdmin
- Create a
mysql
folder withmkdir mysql
- Move to that folder with
cd mysql
and create adocker-compose.yml
file using your preferred editor such asnano docker-compose.yml
- Paste the following code
version: '3'
services:
db:
image: mysql:5.7
container_name: cloudlog-mysql
environment:
MYSQL_ROOT_PASSWORD: my_secret_password
MYSQL_USER: db_user
MYSQL_PASSWORD: db_user_pass
MYSQL_DATABASE: app_db
ports:
- "3306:3306"
volumes:
- dbdata:/var/lib/mysql
restart: unless-stopped
phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: cloudlog-phpmyadmin
links:
- db
environment:
PMA_HOST: db
PMA_PORT: 3306
PMA_ARBITRARY: 1
PMA_USER: db_user
PMA_PASSWORD: db_user_pass
restart: unless-stopped
ports:
- 8083:80
volumes:
dbdata:
Note: on some architectures (such as Ampere A1), you may meed to use :latest
as tag for each image
- Configure:
MYSQL_USER
andPMA_USER
with a custom usernameMYSQL_PASSWORD
andPMA_PASSWORD
with a strong passwordMYSQL_DATABASE
with any name
- Please make a note of the parameters you just configured, you will need this value when configuring Cloudlog installation
- Save the file (if you used nano as editor please type
CTRL+O
followed byCTRL+X
) - Execute the stack with
sudo docker-compose up --build -d cloudlog-tools
- Wait for a confirmation message, if everything was fine you should be able to access
http://address:8083
and access the PhpMyAdmin interface
Execute Cloudlog
Docker containers can be configured in multiple ways, here are three different options:
- Building a local image
- Use Portainer
- Using a prebuilt image
- Using a standalone stack (recommended for beginners)
Option 1: Building an image using the provided scripts
Build the Cloudlog image
- Clone the Cloudlog repository
- Move to the root of the cloned folder
- Build the image with
sudo docker build -f ./docker/Dockerfile -t cloudlog:latest .
Launch the Cloudlog container
- Make sure you are in the
docker
folder - Execute the stack with
sudo docker-compose up --build -d cloudlog
- Wait for confirmation and then access the interface at
http://address:8086
to complete the setup
Option 2: Using Portainer
- Full procedure using Portainer is also described here IU2FRL/CloudlogDocker
Option 3: Prebuilt images
A prebuilt image has been published on Docker Hub at 2m0sql/cloudlog to be pulled and executed on both arm64
and amd64
platforms
Option 4: Standalone stack (recommended for beginners)
This procedure applies to any setup, either plain Linux, Windows or Portainer, the Docker compose file can be found here
Updating the image
To pull new changes you will need to stop the existing instance, rebuild the Cloudlog image and then execute it again.
Contents
Installation
- Installation on Linux server
- Installation on Windows server
- Updating Cloudlog
- Hints & Tips
- cloudlog.php Config
Usage
Administration
User Options
- API
- Station Locations
- Radio Interface
- ADIF Import / Export
- Logbook of The World
- eQSL
- Print Requested QSLs
- Clublog Upload
- QRZ Logbook
- KML Export
Logbook / Callbook Integrations
- Callbook (HamQTH, QRZ) Integration
- Club Log Integration
- QRZ Logbook
- WSJT X Integration
- Third Party Tools