-
-
Notifications
You must be signed in to change notification settings - Fork 191
Building a Docker image from scratch
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
Please refer to the official Docker documentation
This plugin is usually included in Docker installations, if you need to set it up manually please refer to the Docker documentation
- 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
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 username -
MYSQL_PASSWORD
andPMA_PASSWORD
with a strong password -
MYSQL_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
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)
- 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 .
- 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
- Full procedure using Portainer is also described here IU2FRL/CloudlogDocker
A prebuilt image has been published on Docker Hub at 2m0sql/cloudlog to be pulled and executed on both arm64
and amd64
platforms
This procedure applies to any setup, either plain Linux, Windows or Portainer, the Docker compose file can be found here
To pull new changes you will need to stop the existing instance, rebuild the Cloudlog image and then execute it again.
- Installation on Linux server
- Installation on Windows server
- Updating Cloudlog
- Hints & Tips
- cloudlog.php Config
- API
- Station Locations
- Radio Interface
- ADIF Import / Export
- Logbook of The World
- eQSL
- Print Requested QSLs
- Clublog Upload
- QRZ Logbook
- KML Export