-
Notifications
You must be signed in to change notification settings - Fork 83
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 Wavelog.
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 Wavelogchapter - If you are a beginner and just want to have the Wavelog 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 Wavelog container instance, this can be a container too, based on the Linux setup requirements a quick and easy solution is using the
mysql:5.7image 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
mysqlfolder withmkdir mysql - Move to that folder with
cd mysqland create adocker-compose.ymlfile using your preferred editor such asnano docker-compose.yml - Paste the following code
version: '3'
services:
db:
image: mysql:5.7
container_name: wavelog-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: wavelog-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_USERandPMA_USERwith a custom username -
MYSQL_PASSWORDandPMA_PASSWORDwith a strong password -
MYSQL_DATABASEwith any name
-
- Please make a note of the parameters you just configured, you will need this value when configuring Wavelog installation
- Save the file (if you used nano as editor please type
CTRL+Ofollowed byCTRL+X) - Execute the stack with
sudo docker-compose up --build -d wavelog-tools - Wait for a confirmation message, if everything was fine you should be able to access
http://address:8083and 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 Wavelog repository
- Move to the root of the cloned folder
- Build the image with
sudo docker build -f ./docker/Dockerfile -t wavelog:latest .
- Make sure you are in the
dockerfolder - Execute the stack with
sudo docker-compose up --build -d wavelog - Wait for confirmation and then access the interface at
http://address:8086to complete the setup
- Full procedure using Portainer is also described here IU2FRL/WavelogDocker
A prebuilt image has been published on Docker Hub at xxxxxx/wavelog 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 Wavelog image and then execute it again.
- Dashboard
- Logbook
- DXCluster
- DXWaterfall
- Logging
- Notes
- Analytics
- Awards
- Search
- Label-Printing
- Widgets
- Authentication
- QSO Modes
- Backup
- Update Country Files
- User Accounts
- Global Options
- Debug
- Maintenance Mode
- Migrate servers
- API
- Station Profiles
- Radio Interface
- ADIF Import / Export
- Logbook of The World
- eQSL
- Print Requested QSLs
- Clublog Upload
- QRZ Logbook
- KML Export