cd $HOME && wget https://github.com/OlivierGaland/CashFactory/archive/refs/tags/v1.10.tar.gz && tar -xvf v1.10.tar.gz && mv CashFactory-1.10 cashfactory && cd cashfactory && sudo ./setup.sh cat < docker-compose.yml ####################################################################### # File name : docker-compose.yml # Author : Olivier Galand (31/12/2021) # Author email : galand.olivier.david@gmail.com # Project : CashFactory # Project repository : https://github.com/OlivierGaland/CashFactory # # Docker-compose file of CashFactory ####################################################################### version: '3.5' services: #Start of Portainer + Webserver section : # Web GUI with quicklinks to apps dashboards and help : connect to your device port 8888 (Webserver) # Container management and monitoring : connect to your device port 9000 (Portainer) Webserver: image: busybox command: sh -c "cp -R /app/* / && httpd -f -p 8000" volumes: - ./www:/app ports: - 8888:8000 restart: always networks: default: ipv4_address: 172.106.0.10 Portainer: image: portainer/portainer-ce:latest volumes: - /var/run/docker.sock:/var/run/docker.sock - portainer_data:/data ports: - 8000:8000 - 9000:9000 - 9443:9443 restart: always networks: default: ipv4_address: 172.106.0.11 #End of Portainer + Webserver section Packetstream_PsClient: depends_on: - Portainer - Webserver image: packetstream/psclient:latest restart: always environment: - CID=\$PACKETSTREAM_CID networks: default: ipv4_address: 172.106.0.60 Packetstream_Watchtower: depends_on: - Portainer - Webserver - Packetstream_PsClient image: containrrr/watchtower command: --cleanup --include-stopped --revive-stopped --interval 60 --scope PacketStream \${_COMPOSE_PROJECT_NAME}_Packetstream_PsClient_\${_COMPOSE_PROJECT_STACK_ID} labels: - com.centurylinklabs.watchtower.scope=PacketStream volumes: - /var/run/docker.sock:/var/run/docker.sock restart: always networks: default: ipv4_address: 172.106.0.61 #End of Packetstream section #Start of Repocket section (remove this if Repocket not wanted) # variables to define in .env file : # RP_EMAIL : Your application mail # RP_API_KEY : Your application api key (available in repocket dashboard) Repocket: depends_on: - Portainer - Webserver image: repocket/repocket:latest restart: always environment: - RP_EMAIL - RP_API_KEY networks: default: ipv4_address: 172.106.0.90 #End of Repocket section #Start of Proxyrack section (remove this if Proxyrack not wanted) # variables to define in .env file : # PROXYRACK_HOST_UUID : Your host UUID (random string), you can generate it using the command : cat /dev/urandom | LC_ALL=C tr -dc 'A-F0-9' | dd bs=1 count=64 2>/dev/null Proxyrack: depends_on: - Portainer - Webserver image: proxyrack/pop:latest restart: always environment: - UUID=\$PROXYRACK_HOST_UUID networks: default: ipv4_address: 172.106.0.110 #End of Proxyrack section #Start of EarnFm section (remove this if EarnFm not wanted) # variables to define in .env file : # EARNFM_APIKEY : Your API key (available in earnfm dashboard -> more) EarnFm_Client: depends_on: - Portainer - Webserver image: earnfm/earnfm-client:latest restart: always environment: - EARNFM_TOKEN=\$EARNFM_APIKEY networks: default: ipv4_address: 172.106.0.130 EarnFm_Watchtower: depends_on: - Portainer - Webserver - EarnFm_Client image: containrrr/watchtower command: --cleanup --include-stopped --revive-stopped --interval 60 --scope EarnFm \${_COMPOSE_PROJECT_NAME}_EarnFm_Client_\${_COMPOSE_PROJECT_STACK_ID} labels: - com.centurylinklabs.watchtower.scope=EarnFm volumes: - /var/run/docker.sock:/var/run/docker.sock restart: always networks: default: ipv4_address: 172.106.0.131 #End of EarnFm section volumes: portainer_data: networks: default: driver: bridge ipam: driver: default config: - subnet: 172.106.0.0/16 EOF DEVICE_NAME=$(hostname) && PROXYRACK_HOST_UUID=$(cat /dev/urandom | LC_ALL=C tr -dc 'A-F0-9' | dd bs=1 count=64 2>/dev/null) && echo "Generated PROXYRACK_HOST_UUID: $PROXYRACK_HOST_UUID" && PACKETSTREAM_CID="a7w" && TRAFFMONETIZER_TOKEN="PZLgM/Ay6aK8EevYYGHdLAvI4wOLUrGoIj4tjzFsPYc=" && RP_EMAIL="njkhanh@gmail.com" && RP_API_KEY="d218da4c-7d52-4238-8c15-7b785fa0ba99" && PROXYLITE_USER_ID="516359" && EARNFM_APIKEY="4e34d4a7-8d54-4667-9ec8-51f7178873d1" && sed -i "s/^DEVICE_NAME=.*/DEVICE_NAME=$DEVICE_NAME/" .env && sed -i "s/^PROXYRACK_HOST_UUID=.*/PROXYRACK_HOST_UUID=$PROXYRACK_HOST_UUID/" .env && sed -i "s/^PACKETSTREAM_CID=.*/PACKETSTREAM_CID=$PACKETSTREAM_CID/" .env && sed -i "s|^TRAFFMONETIZER_TOKEN=.*|TRAFFMONETIZER_TOKEN=$TRAFFMONETIZER_TOKEN|" .env && sed -i "s/^RP_EMAIL=.*/RP_EMAIL='$RP_EMAIL'/" .env && sed -i "s/^RP_API_KEY=.*/RP_API_KEY='$RP_API_KEY'/" .env && sed -i "s/^PROXYLITE_USER_ID=.*/PROXYLITE_USER_ID=$PROXYLITE_USER_ID/" .env && sed -i "s/^EARNFM_APIKEY=.*/EARNFM_APIKEY=$EARNFM_APIKEY/" .env && echo "Updated .env file successfully with the following content:" && cat .env docker compose up -d && echo "ID:" && echo "$PROXYRACK_HOST_UUID"