Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
80195fd
Update example-compose ui definition
RadioAndrea Mar 7, 2024
3369606
Added volume version of yaml file
RadioAndrea Mar 24, 2024
26e8cc2
Updated readme documentation
RadioAndrea Mar 24, 2024
a4fcf50
Docker: Add env vars to compose files
stephendade Apr 25, 2024
fa26617
update --check logic and nodered version compatibility
phreed May 14, 2024
ac32181
Merge pull request #125 from FreeTAKTeam/container/container-volume
RadioAndrea May 27, 2024
c4c01a0
Fixed example compose container registry link
RadioAndrea Jun 15, 2024
f946003
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
74a2fe1
ignore apt so files and merge error files
phreed Oct 8, 2024
6b01b86
enabled devcontainer
phreed Oct 8, 2024
eb73b15
use more current version of nodejs
phreed Oct 8, 2024
00735d9
invoke the nodejs environment function
phreed Oct 8, 2024
b457749
Update example-compose ui definition
RadioAndrea Mar 7, 2024
56ad582
Added volume version of yaml file
RadioAndrea Mar 24, 2024
2c2982c
Updated readme documentation
RadioAndrea Mar 24, 2024
e5fa925
Docker: Add env vars to compose files
stephendade Apr 25, 2024
5bb989b
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
e449d23
Docker: Add env vars to compose files
stephendade Apr 25, 2024
d79b711
Docker: Add env vars to compose files
stephendade Apr 25, 2024
f7597ae
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
79a592c
Docker: Add env vars to compose files
stephendade Apr 25, 2024
be09151
Docker: Add env vars to compose files
stephendade Apr 25, 2024
63c2619
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
f5438b5
Docker: Add env vars to compose files
stephendade Apr 25, 2024
c282e5f
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
d9015d7
Docker: Add env vars to compose files
stephendade Apr 25, 2024
cbfca2d
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
55d3007
Docker: Add env vars to compose files
stephendade Apr 25, 2024
122bb37
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
d490e14
Docker: Add env vars to compose files
stephendade Apr 25, 2024
05eeb0e
Docker: Add env vars to compose files
stephendade Apr 25, 2024
a8e637f
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
0fc4657
Docker: Add env vars to compose files
stephendade Apr 25, 2024
679acf8
Docker: Add env vars to compose files
stephendade Apr 25, 2024
b60c23b
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
f488123
update --check logic and nodered version compatibility
phreed May 14, 2024
25b5071
ignore apt so files and merge error files
phreed Oct 8, 2024
26fc64e
enabled devcontainer
phreed Oct 8, 2024
e0bcee7
use more current version of nodejs
phreed Oct 8, 2024
0ec2063
invoke the nodejs environment function
phreed Oct 8, 2024
2104692
Docker: Add env vars to compose files
stephendade Apr 25, 2024
d43fdde
Docker: Add env vars to compose files
stephendade Apr 25, 2024
4667ddd
Docker: Add env vars to compose files
stephendade Apr 25, 2024
a0503bb
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
2670825
Docker: Add env vars to compose files
stephendade Apr 25, 2024
45b3657
Docker: Add env vars to compose files
stephendade Apr 25, 2024
5af1711
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
1c53e68
Docker: Add env vars to compose files
stephendade Apr 25, 2024
29f629c
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
7edd977
Docker: Add env vars to compose files
stephendade Apr 25, 2024
9af9c0e
Docker: Add env vars to compose files
stephendade Apr 25, 2024
13b5313
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
1b6299e
Docker: Add env vars to compose files
stephendade Apr 25, 2024
2cd46eb
Docker: Add env vars to compose files
stephendade Apr 25, 2024
416fd89
Update compose files so that containers can find each other
RadioAndrea Sep 1, 2024
3fc76da
Merge remote-tracking branch 'refs/remotes/origin/issue_120' into iss…
phreed Oct 8, 2024
1a83783
match upstream main
phreed Oct 8, 2024
ae47604
make clean up less aggresive
phreed Oct 8, 2024
42a9078
released version of webmap
phreed Oct 8, 2024
ff5c070
quiet the bash trace
phreed Oct 8, 2024
4e792e9
update testing instructions
phreed Oct 8, 2024
77a941e
use pyvenv rather than installing the virtualenv package
phreed Oct 8, 2024
bbb2f9e
virtualevn install
phreed Oct 8, 2024
7dc7c83
install virtualenv via pip
phreed Oct 8, 2024
3f5a1e2
use venv module
phreed Oct 8, 2024
6d21d87
must install venv with python3-venv
phreed Oct 8, 2024
2fc1490
python environment not installing properly
phreed Oct 8, 2024
6f52672
move ansible into the python venv
phreed Oct 8, 2024
66e27d8
echo command line args
phreed Oct 8, 2024
43ad138
the easy_install.sh needs a branch specifier
phreed Oct 8, 2024
ba07c1d
use the ansible python interpreter to install venv
phreed Oct 8, 2024
c506c82
use ansible python to set venv python
phreed Oct 8, 2024
2bbb5a9
missed quotes on venv python variable
phreed Oct 8, 2024
e3f9682
not picking up correct python
phreed Oct 8, 2024
87a5579
save ansible.cfg
phreed Oct 9, 2024
fd64b89
removed local versions of certain flows
phreed Oct 11, 2024
0de79d7
removed personal paths
phreed Oct 11, 2024
9243d51
update flow sources, include global-config flow (environment variables)
phreed Oct 17, 2024
bedeeb8
update the documentation with environment variables
phreed Oct 17, 2024
92b527c
log_verbosity needs a default value, given 0
phreed Oct 17, 2024
271d982
ansible gather_timeout needs a default value, given 10 (seconds)
phreed Oct 17, 2024
28e7dec
provide default remote_port, given as 22
phreed Oct 17, 2024
c6d6648
suppress ignore_signature_status_codes
phreed Oct 17, 2024
5268557
park ansible.cfg until later
phreed Oct 17, 2024
7e563ca
park ansible.cfg until later
phreed Oct 17, 2024
d0aaee5
temporarily do not update global-config
phreed Oct 17, 2024
3f6ed37
waiting for new videochecker flow
phreed Oct 17, 2024
9acba63
do not stop processing just because a flow could not be set
phreed Oct 18, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
FROM mcr.microsoft.com/devcontainers/base:ubuntu-22.04
RUN apt-get update \
&& apt-get install -y python3 python3-pip \
&& pip3 install --upgrade pip virtualenv
51 changes: 51 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
// For format details, see https://aka.ms/devcontainer.json.
// For config options, see the README at: https://github.com/devcontainers/templates/tree/main/src/ubuntu
{
"name": "FTS-Install",
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"build": {
// Path is relative to the devcontainer.json file.
"dockerfile": "Dockerfile",
"context": "."
},

// Features to add to the dev container. ore info: https://containers.dev/features.
"features": {
"ghcr.io/devcontainers/features/common-utils:2": {
"installZsh": "true",
"username": "vscode",
"userUid": "1000",
"userGid": "1000",
"upgradePackages": "true"
},
"ghcr.io/devcontainers/features/git:1": {
"version": "latest",
"ppa": "false"
}
},

// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],

// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "uname -a",

// Configure tool-specific properties.
"customizations" : {
"jetbrains" : {
"backend" : "IntelliJ"
}
},
"runArgs": [
"--net", "host",
"-e", "DISPLAY=:0",
"-e", "XAUTHORITY=/tmp/.Xauthority",
"-v", "${localEnv:HOME}/.Xauthority:/tmp/.Xauthority"
],
"containerEnv": {
"DISPLAY": "unix:0"
},

// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "root"
}
8 changes: 7 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ terraform.rc

# ansible
ansible_log.rb
ansible.cfg

/.vagrant/bundler/global.sol
/.vagrant/machines/default/digital_ocean/action_provision
/.vagrant/machines/default/digital_ocean/creator_uid
Expand All @@ -72,3 +72,9 @@ ansible.cfg
/.vagrant/*
/.byebug_history
/docs/DEV.md

apt_inst.so
apt_pkg.so

git-error-*

980 changes: 980 additions & 0 deletions ansible.cfg

Large diffs are not rendered by default.

43 changes: 0 additions & 43 deletions containers/compose.yaml

This file was deleted.

51 changes: 26 additions & 25 deletions containers/container_readme.md
Original file line number Diff line number Diff line change
@@ -1,35 +1,36 @@
# Containers
## Full Documentation
WIP
**WIP**

For full instructions see: https://freetakteam.github.io/FreeTAKServer-User-Docs/Installation/Docker/overview/
WIP

**WIP**

## Podman
These containers were designed under the podman runtime, and are fully compatible with being run as rootless.

If you are familiar with container infrastructure, you can simply copy this entire directory and modify the compose.yaml
to fit your needs.

## Quick Instructions

For podman:
```shell
podman-compose up
```

or if you use non-free runtime:

```shell
docker-compose up
```
## Docker
These containers are likely to work perfectly well in docker.

Then refer to other FTS documentation to do appropriate configuration.
Please consider running rootless for extra security.

All config files you need should be created in the volume, so it is a good idea to create a mounted volume instead of a
standard volume.

If you are missing any/all configuration files, ensure:
- Restart container to trigger copy script again
- Permissions are sufficient for the container to use the volume directory
- On selinux hosts, sticky bit may need to be set
- Also on selinux, you may need to reload the labels/contexts
## Quick Instructions
1. Copy the [`example-compose.yaml`](https://github.com/FreeTAKTeam/FreeTAKHub-Installation/blob/main/containers/example-compose.yaml)
file to your favorite directory.
2. Rename it to compose.yaml
3. Run the command

For podman:
```shell
podman-compose up
```

For non-free runtime:

```shell
docker-compose up
```

4. Then refer to other FTS documentation to do appropriate configuration using the environment variables exposed in the
compose file.
27 changes: 0 additions & 27 deletions containers/core-pypi.Dockerfile

This file was deleted.

29 changes: 0 additions & 29 deletions containers/core-run.sh

This file was deleted.

101 changes: 101 additions & 0 deletions containers/devel-compose.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
services:
freetakserver:
# if you want a specific branch, change master to your branch name
image: ghcr.io/freetakteam/freetakserver:master
hostname: freetakserver
networks:
- taknet
volumes:
- free-tak-core-db:/opt/fts/
ports:
# DataPackagePort
- 8080:8080
# CoTPort
- 8087:8087
# SSLCoTPort
- 8089:8089
# SSLDataPackagePort
- 8443:8443
# FederationPort
- 9000:9000
# APIPort - Don't expose by default
- 19023:19023

environment:
# The ChangeMe section
FTS_FED_PASSWORD: "defaultpass"
FTS_CLIENT_CERT_PASSWORD: "supersecret"
FTS_WEBSOCKET_KEY: "YourWebsocketKey"
FTS_SECRET_KEY: "vnkdjnfjknfl1232#"
#FTS_NODE_ID: "SOMESTRING"
FTS_CONNECTION_MESSAGE: "Welcome to FreeTAKServer. The Parrot is not dead. It’s just resting"

# Networking
FTS_COT_PORT: 8087
FTS_SSLCOT_PORT: 8089
FTS_API_PORT: 19023
FTS_FED_PORT: 9000

FTS_DP_ADDRESS: 'freetakserver'
FTS_USER_ADDRESS: 'freetakserver'
FTS_API_ADDRESS: 'freetakserver'

FTS_ROUTING_PROXY_SUBSCRIBE_PORT: 19030
FTS_ROUTING_PROXY_SUBSCRIBE_IP: 'freetakserver'

FTS_ROUTING_PROXY_PUBLISHER_PORT: 19032
FTS_ROUTING_PROXY_PUBLISHER_IP: 'freetakserver'

FTS_ROUTING_PROXY_SERVER_PORT: 19031
FTS_ROUTING_PROXY_SERVER_IP: 'freetakserver'

FTS_INTEGRATION_MANAGER_PULLER_PORT: 19033 # port to receive worker responses by the integration manager
FTS_INTEGRATION_MANAGER_PULLER_ADDRESS: 'freetakserver' # address to receive worker responses by the integration manager

FTS_INTEGRATION_MANAGER_PUBLISHER_PORT: 19034 # port from which to publish messages by the integration manager
FTS_INTEGRATION_MANAGER_PUBLISHER_ADDRESS: 'freetakserver' # address from which to publish messages by the integration manager

# Misc Settings
FTS_OPTIMIZE_API: True
FTS_DATA_RECEPTION_BUFFER: 1024
FTS_MAX_RECEPTION_TIME: 4
FTS_NUM_ROUTING_WORKERS: 3
FTS_COT_TO_DB: True
# number of milliseconds to wait between each iteration of main loop
# decreasing will increase CPU usage and server performance
# increasing will decrease CPU usage and server performance
FTS_MAINLOOP_DELAY: 100
FTS_EMERGENCY_RADIUS: 0 # radius of emergency within-which users will receive it
FTS_LOG_LEVEL: "info"

freetakserver-ui:
# if you want a specific branch, change master to your branch name
#image: ghcr.io/freetakteam/ui:master
image: localhost/freetakserver-ui:latest
hostname: freetakserver-ui
networks:
- taknet
ports:
- 5000:5000
volumes:
- free-tak-ui-db:/home/freetak/:Z,rw
environment:
FTS_IP: YOUR EXTERNAL URL HERE
FTS_API_PORT: 19023
FTS_API_PROTO: 'http'
FTS_UI_EXPOSED_IP: 'freetakserver-ui'
FTS_MAP_EXPOSED_IP: '127.0.0.1'
FTS_MAP_PORT: 8000
FTS_MAP_PROTO: 'http'
FTS_UI_PORT: 5000
FTS_UI_WSKEY: 'YourWebsocketKey'
FTS_API_KEY: 'Bearer token'
FTS_UI_SQLALCHEMY_DATABASE_URI: 'sqlite:////home/freetak/data/FTSServer-UI.db'

volumes:
free-tak-core-db:
free-tak-ui-db:

networks:
taknet:
driver: bridge
Loading