Docker Container¶
License & Important Disclaimer¶
AIS-catcher is provided for research and educational purposes. It has not been designed, tested, or certified for reliability, accuracy, or safety. Do not rely on AIS-catcher for navigation or any safety-critical applications. Users bear full responsibility for ensuring compliance with local laws and regulations regarding the reception, decoding, and use of AIS signals. AIS-catcher is provided “as is,” without warranty of any kind, and must not be used for illegal or unauthorized activities. Operate AIS-catcher only where such use is permitted by local authorities.
Copyright (C) 2021–2025 jvde.github at gmail.com. Licensed under the GNU General Public License v3.0
Jump to the desired Installation Option:
Basic Docker Container¶
Pre-built container images containing AIS-catcher are available from the GitHub Container Registry. Available container tags are documented on the package's page, with latest
(the latest release) and edge
(the bleeding edge of the main
branch) being the two main ones.
The following docker run
command provides an example of the usage of this container image, running the latest release of AIS-catcher interactively:
docker run --rm -it --pull always --device /dev/bus/usb ghcr.io/jvde-github/ais-catcher:latest <ais-catcher command line options>
Alternatively, the following docker-compose.yml
configuration provides a good starting point should you wish to use Docker Compose:
services:
ais-catcher:
command: <ais-catcher command line options> (e.g. -N 8100)
container_name: ais-catcher
ports:
- 8100:8100 <don't forget to passthrough ports for the webclient>
devices:
- "/dev/bus/usb:/dev/bus/usb"
image: ghcr.io/jvde-github/ais-catcher:latest
restart: always
More options¶
To pull the latest docker image (e.g. to create or refresh to the latest version) without running:
docker pull ghcr.io/jvde-github/ais-catcher:edge
docker run --device /dev/bus/usb --rm -it ghcr.io/jvde-github/ais-catcher:edge
-p 8100:8100
). To send UDP data to OpenCPN running on the host computer, you can try to find the bridge network address (sudo docker network inspect bridge
as per tutorials and use this as UDP destination address (e.g. -u 172.17.0.1 5077
). Alternatively you could use --network host
although less desirable. Please consult the Docker documentation.
An excellent Docker set-up is the docker-shipfeeder that provides a user friendly way to feed various aggregators with excellent documentation and user support by the sdrenthusiasts community.
Docker with Web GUI¶
If you are already up and running with Docker installed, you can simply use:
docker run --privileged -v /dev/bus/usb:/dev/bus/usb -p 8110:8110 -p 8100:8100 --pull=always ghcr.io/jvde-github/ais-catcher-control:edge