Skip to content

Commit

Permalink
documentation updates
Browse files Browse the repository at this point in the history
  • Loading branch information
actions-user committed Mar 15, 2024
1 parent 41b3130 commit b2324a0
Show file tree
Hide file tree
Showing 3 changed files with 143 additions and 121 deletions.
94 changes: 69 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,46 +63,90 @@ services:
hostname: shipfeeder
restart: always
environment:
# general parameters:
- VERBOSE_LOGGING=
- SHARING_KEY=${SX_SHARING_KEY}
- SERIAL_NUMBER=${SX_SERIAL_NUMBER}
- RTLSDR_DEVICE_SERIAL=${SX_RTLSDR_DEVICE_SERIAL}
- UDP_FEEDS=${SX_UDP_FEEDS}
- RTLSDR_DEVICE_GAIN=${SX_RTLSDR_GAIN}
# ais-catcher general and website related parameters
- AISCATCHER_EXTRA_OPTIONS=${SX_EXTRA_OPTIONS}
- STATION_NAME=${SX_STATION_NAME}${SX_SERIAL_NUMBER}
- STATION_NAME=${STATION_NAME}
- STATION_HISTORY=3600
- BACKUP_INTERVAL=5
- SXFEEDER_LON=${FEEDER_LONG}
- SXFEEDER_LAT=${FEEDER_LAT}
- PROMETHEUS_ENABLE=true
- AISCATCHER_SHAREDATA=true
- FEEDER_LONG=${FEEDER_LONG}
- FEEDER_LAT=${FEEDER_LAT}
- SITESHOW=on
- PROMETHEUS_ENABLE=on
- REALTIME=on
# ais-catcher receiver related parameters
- RTLSDR_DEVICE_SERIAL=${RTLSDR_DEVICE_SERIAL}
- RTLSDR_DEVICE_GAIN=${RTLSDR_DEVICE_GAIN}
- RTLSDR_DEVICE_PPM=${RTLSDR_DEVICE_PPM}
- RTLSDR_DEVICE_BANDWIDTH=${RTLSDR_DEVICE_BANDWIDTH}
- AISCATCHER_DECODER_AFC_WIDE=${AISCATCHER_DECODER_AFC_WIDE}
# aggregrators related parameters
- AIRFRAMES_STATION_ID=${AIRFRAMES_STATION_ID}
- AISCATCHER_FEEDER_KEY=${AISCATCHER_FEEDER_KEY}
- AISHUB_UDP_PORT=${AISHUB_UDP_PORT}
- APRSFI_FEEDER_KEY=${APRSFI_FEEDER_KEY}
- BOATBEACON_SHAREDATA=${BOATBEACON_SHAREDATA}
- HPRADAR_UDP_PORT=${HPRADAR_UDP_PORT}
- MARINETRAFFIC_UDP_PORT=${MARINETRAFFIC_UDP_PORT}
- MYSHIPTRACKING_UDP_PORT=${MYSHIPTRACKING_UDP_PORT}
- RADARVIRTUEL_FEEDER_KEY=${RADARVIRTUEL_FEEDER_KEY}
- RADARVIRTUEL_STATION_ID=${RADARVIRTUEL_STATION_ID}
- SHIPFINDER_SHAREDATA=${SHIPFINDER_SHAREDATA}
- SHIPPINGEXPLORER_UDP_PORT=${SHIPPINGEXPLORER_UDP_PORT}
- SHIPXPLORER_SHARING_KEY=${SHIPXPLORER_SHARING_KEY}
- SHIPXPLORER_SERIAL_NUMBER=${SHIPXPLORER_SERIAL_NUMBER}
- VESSELFINDER_UDP_PORT=${VESSELFINDER_UDP_PORT}
- VESSELTRACKER_UDP_PORT=${VESSELTRACKER_UDP_PORT}
- UDP_FEEDS=${SX_UDP_FEEDS}
# incoming UDP data related parameters:
- AISCATCHER_UDP_INPUTS=${AISCATCHER_UDP_INPUTS}
ports:
- 90:80
devices:
- /dev/bus/usb
- 9988:9988/udp
device_cgroup_rules:
- 'c 189:* rwm'
tmpfs:
- /tmp
volumes:
- "/etc/localtime:/etc/localtime:ro"
- "/etc/timezone:/etc/timezone:ro"
- "/opt/ais/shipfeeder/data:/data"
labels:
- "com.centurylinklabs.watchtower.scope=ais"
- "/opt/ais/shipxplorer/data:/data"
- /dev:/dev:rw
```
Example accompanying `.env` file:

```bash
FEEDER_LAT=42.3788502
FEEDER_LONG=-71.0360718
SX_SHARING_KEY=0123456789abcdef
SX_SERIAL_NUMBER=SXTRPI000xxx
SX_RTLSDR_DEVICE_SERIAL=sdr_serial_number_here
SX_RTLSDR_GAIN=auto
SX_UDP_FEEDS=ip1:port1,ip2:port2:JSON on,ip3:port3
SX_EXTRA_OPTIONS=-p 0 -a 192K -m 4 -go AFC_WIDE on
SX_STATION_NAME=My_station_name_single_string_no_spaces_but_html_char_encoding_is_ok_for_example This is Boston Calling
```text
# ShipFeeder receiver and webpage related parameters:
FEEDER_LAT=xx.xxxxxx
FEEDER_LONG=yy.yyyyyy
RTLSDR_DEVICE_SERIAL=DEVICE-SERIAL
RTLSDR_DEVICE_GAIN=xxx
RTLSDR_DEVICE_PPM=xxx
AISCATCHER_DECODER_AFC_WIDE=on
AISCATCHER_CHANNELS=AB CD
STATION_NAME=My Station Name
#
# keys and params for aggregators:
# If you aren't feeding a specific aggregator, leave the value EMPTY or remove the parameter
AIRFRAMES_STATION_ID=XX-XXXXXXX-AIS
AISCATCHER_FEEDER_KEY=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
AISHUB_UDP_PORT=xxxx
APRSFI_FEEDER_KEY=xxxxxxx
APRSFI_STATION_ID=MYCALL
BOATBEACON_SHAREDATA=true
HPRADAR_UDP_PORT=xxxx
MARINETRAFFIC_UDP_PORT=xxxxx
MYSHIPTRACKING_UDP_PORT=xxxxx
RADARVIRTUEL_FEEDER_KEY=xxxxxxxxx
RADARVIRTUEL_STATION_ID=xx
SHIPFINDER_SHAREDATA=true
SHIPPINGEXPLORER_UDP_PORT=xxxxx
SHIPXPLORER_SHARING_KEY=xxxxxxxxxxxxxxxxxxx
SHIPXPLORER_SERIAL_NUMBER=SXTRPI00xxxx
VESSELFINDER_UDP_PORT=xxxx
VESSELTRACKER_UDP_PORT=xxxx
```

Replace the `SHARING_KEY`, `SERIAL_NUMBER`, and `RTLSDR_DEVICE_SERIAL` with the appropriate values.
Expand Down
45 changes: 29 additions & 16 deletions config-examples/.env.sample
Original file line number Diff line number Diff line change
@@ -1,16 +1,29 @@
FEEDER_LAT=xx.xxxxx
FEEDER_LONG=-yy.yyyyy
SX_SHARING_KEY=fxxxxxxxxxxxxxxxxxxxxxx7
SX_SERIAL_NUMBER=SXTRPI000000
SX_RTLSDR_DEVICE_SERIAL=AIS
SX_RTLSDR_GAIN=auto
SX_UDP_FEEDS=5.9.207.224:xxxxx,ais.vesselfinder.com:xxxx,144.76.54.111:xxxxx
SX_EXTRA_OPTIONS=-p -2 -a 192K -H http://aprs.fi/jsonais/post/zxxxxxxV ID MYCALL PROTOCOL aprs INTERVAL 30 RESPONSE off -H http://10.147.20.76:9995/test ID XX-USXXX-AIS INTERVAL 30 RESPONSE off
SX_STATION_NAME=My Station Name Here
VA_MASTODON_SERVER=airwaves.social
VA_MASTODON_ACCESS_TOKEN=9xxxxxxxxxxxxxxxxxxxxxxxxxxxo
VA_MASTODON_SKIP_FILTER=^[9]{2}[0-9]{7}$$|^[0-9]{7}$$
VA_MASTODON_CUSTOM_FIELD=Join us! https://vesselalert.com
VA_DISCORD_NAME=My AIS - My Location, USA
VA_DISCORD_AVATAR_URL=https://files.airwaves.social/accounts/avatars/xxxxxxxx.jpeg
VA_DISCORD_WEBHOOKS=
# ShipFeeder receiver and webpage related parameters:
FEEDER_LAT=xx.xxxxxx
FEEDER_LONG=yy.yyyyyy
RTLSDR_DEVICE_SERIAL=DEVICE-SERIAL
RTLSDR_DEVICE_GAIN=xxx
RTLSDR_DEVICE_PPM=xxx
AISCATCHER_DECODER_AFC_WIDE=on
AISCATCHER_CHANNELS=AB CD
STATION_NAME=My Station Name
#
# keys and params for aggregators:
# If you aren't feeding a specific aggregator, leave the value EMPTY or remove the parameter
AIRFRAMES_STATION_ID=XX-XXXXXXX-AIS
AISCATCHER_FEEDER_KEY=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
AISHUB_UDP_PORT=xxxx
APRSFI_FEEDER_KEY=xxxxxxx
APRSFI_STATION_ID=MYCALL
BOATBEACON_SHAREDATA=true
HPRADAR_UDP_PORT=xxxx
MARINETRAFFIC_UDP_PORT=xxxxx
MYSHIPTRACKING_UDP_PORT=xxxxx
RADARVIRTUEL_FEEDER_KEY=xxxxxxxxx
RADARVIRTUEL_STATION_ID=xx
SHIPFINDER_SHAREDATA=true
SHIPPINGEXPLORER_UDP_PORT=xxxxx
SHIPXPLORER_SHARING_KEY=xxxxxxxxxxxxxxxxxxx
SHIPXPLORER_SERIAL_NUMBER=SXTRPI00xxxx
VESSELFINDER_UDP_PORT=xxxx
VESSELTRACKER_UDP_PORT=xxxx
125 changes: 45 additions & 80 deletions config-examples/docker-compose.yml.sample
Original file line number Diff line number Diff line change
@@ -1,93 +1,58 @@
version: '3.8'

services:
shipxplorer:
image: ghcr.io/sdr-enthusiasts/shipxplorer
container_name: shipxplorer
hostname: shipxplorer
restart: unless-stopped
shipfeeder:
image: ghcr.io/sdr-enthusiasts/docker-shipfeeder
container_name: shipfeeder
hostname: shipfeeder
restart: always
environment:
- STATION_NAME=${SX_STATION_NAME}
- SXFEEDER_LAT=${FEEDER_LAT}
- SXFEEDER_LON=${FEEDER_LONG}
# general parameters:
- VERBOSE_LOGGING=
# ais-catcher general and website related parameters
- AISCATCHER_EXTRA_OPTIONS=${SX_EXTRA_OPTIONS}
- RTLSDR_DEVICE_GAIN=${SX_RTLSDR_GAIN}
- SERIAL_NUMBER=${SX_SERIAL_NUMBER}
- RTLSDR_DEVICE_SERIAL=${SX_RTLSDR_DEVICE_SERIAL}
- STATION_NAME=${STATION_NAME}${SHIPXPLORER_SERIAL_NUMBER}
- STATION_HISTORY=3600
- BACKUP_INTERVAL=5
- FEEDER_LONG=${FEEDER_LONG}
- FEEDER_LAT=${FEEDER_LAT}
- SITESHOW=on
- PROMETHEUS_ENABLE=on
- REALTIME=on
# ais-catcher receiver related parameters
- RTLSDR_DEVICE_SERIAL=${RTLSDR_DEVICE_SERIAL}
- RTLSDR_DEVICE_GAIN=${RTLSDR_DEVICE_GAIN}
- RTLSDR_DEVICE_PPM=${RTLSDR_DEVICE_PPM}
- RTLSDR_DEVICE_BANDWIDTH=${RTLSDR_DEVICE_BANDWIDTH}
- AISCATCHER_DECODER_AFC_WIDE=${AISCATCHER_DECODER_AFC_WIDE}
# aggregrators related parameters
- AIRFRAMES_STATION_ID=${AIRFRAMES_STATION_ID}
- AISCATCHER_FEEDER_KEY=${AISCATCHER_FEEDER_KEY}
- AISHUB_UDP_PORT=${AISHUB_UDP_PORT}
- APRSFI_FEEDER_KEY=${APRSFI_FEEDER_KEY}
- BOATBEACON_SHAREDATA=${BOATBEACON_SHAREDATA}
- HPRADAR_UDP_PORT=${HPRADAR_UDP_PORT}
- MARINETRAFFIC_UDP_PORT=${MARINETRAFFIC_UDP_PORT}
- MYSHIPTRACKING_UDP_PORT=${MYSHIPTRACKING_UDP_PORT}
- RADARVIRTUEL_FEEDER_KEY=${RADARVIRTUEL_FEEDER_KEY}
- RADARVIRTUEL_STATION_ID=${RADARVIRTUEL_STATION_ID}
- SHIPFINDER_SHAREDATA=${SHIPFINDER_SHAREDATA}
- SHIPPINGEXPLORER_UDP_PORT=${SHIPPINGEXPLORER_UDP_PORT}
- SHIPXPLORER_SHARING_KEY=${SHIPXPLORER_SHARING_KEY}
- SHIPXPLORER_SERIAL_NUMBER=${SHIPXPLORER_SERIAL_NUMBER}
- VESSELFINDER_UDP_PORT=${VESSELFINDER_UDP_PORT}
- VESSELTRACKER_UDP_PORT=${VESSELTRACKER_UDP_PORT}
- UDP_FEEDS=${SX_UDP_FEEDS}
- SHARING_KEY=${SX_SHARING_KEY}
# incoming UDP data related parameters:
- AISCATCHER_UDP_INPUTS=${AISCATCHER_UDP_INPUTS}
ports:
- 90:80
devices:
- /dev/bus/usb
- 9988:9988/udp
device_cgroup_rules:
- 'c 189:* rwm'
tmpfs:
- /tmp
volumes:
- "/etc/localtime:/etc/localtime:ro"
- "/etc/timezone:/etc/timezone:ro"
- "/opt/ais/shipxplorer/data:/data"
- /opt/ais/shipxplorer/cpuinfo/cpuinfo:/proc/cpuinfo
labels:
- com.centurylinklabs.watchtower.scope=ais

ais-screenshot:
image: ghcr.io/sdr-enthusiasts/screenshot:aiscatcher
tty: true
container_name: ais-screenshot
hostname: ais-screenshot
restart: always
shm_size: 1gb
environment:
- LOAD_SLEEP_TIME=15
- BASE_URL=http://shipxplorer
- MAXTIME=60
- MAP_ARGS=map=OpenStreetMap
ports:
- 5043:5042
labels:
- com.centurylinklabs.watchtower.scope=ais

vesselalert:
image: ghcr.io/sdr-enthusiasts/vesselalert
container_name: vesselalert
hostname: vesselalert
restart: always
environment:
- AIS_URL=https://shipxplorer
- MASTODON_SERVER=${VA_MASTODON_SERVER}
- MASTODON_ACCESS_TOKEN=${VA_MASTODON_ACCESS_TOKEN}
- MASTODON_SKIP_FILTER=${VA_MASTODON_SKIP_FILTER}
- NOTIFICATION_MIN_DIST=8
- MASTODON_CUSTOM_FIELD=${VA_MASTODON_CUSTOM_FIELD}
- MASTODON_LINK_SHIPXPLORER=on
- MASTODON_LINK_MARINETRAFFIC=on
- MASTODON_LINK_VESSELFINDER=on
- MASTODON_ONLY_NEW_ON_STARTUP=on
- MASTODON_THROTTLE=on
- NOTIFICATION_MAPURL=on
- DISCORD_NAME=${VA_DISCORD_NAME}
- DISCORD_AVATAR_URL=${VA_DISCORD_AVATAR_URL}
- DISCORD_WEBHOOKS=${VA_DISCORD_WEBHOOKS}
- SCREENSHOT_URL=http://ais-screenshot:5042
tmpfs:
- /tmp
volumes:
- /opt/ais/vesselalert/data:/data
- "/etc/localtime:/etc/localtime:ro"
- "/etc/timezone:/etc/timezone:ro"
labels:
- com.centurylinklabs.watchtower.scope=ais

watchtower:
image: containrrr/watchtower
container_name: watchtower-ais
environment:
- TZ=Europe/London
- WATCHTOWER_CLEANUP=true
- WATCHTOWER_ROLLING_RESTART=true
hostname: watchtower-ais
volumes:
- /var/run/docker.sock:/var/run/docker.sock
command: --interval 1800 --scope ais
labels:
- com.centurylinklabs.watchtower.scope=ais
- /dev:/dev:rw

0 comments on commit b2324a0

Please sign in to comment.