-
-
Notifications
You must be signed in to change notification settings - Fork 42
Docker
The best and most efficient way to deploy fillet is to containerize it and run it as a micro-service on Linux clusters. So far I have found Docker to be the best out of all the technologies that I have had a chance to use for containerizing applications and turning them into services. I recommend using a newer Ubuntu distribution such as 16.04 or even 18.04 since it will be bundled with the newer Docker release and be up to date with security patches.
Build and save the Docker image:
- Build the Docker image (this is based on the Dockerfile - modify as needed)
cannonbeach@insanitywave:$: sudo docker build -t dockerfillet .
- Extract the Docker image (so it can be copied over to another node)
cannonbeach@insanitywave:$: sudo docker save -o /home/cannonbeach/fillet/docker/dockerfillet.tar dockerfillet
- Import the Docker image (after coyping)
cannonbeach@insomniacoffee:$: sudo docker load -i dockerfillet.tar
- Run the Docker image
cannonbeach@insomniacoffee:$: sudo docker run -itd --net=host --name livestream1 --restart=unless-stopped -v /var/www/html/hls:/var/www/html/hls dockerfillet /usr/bin/fillet --sources 3 --window 20 --segment 2 --ip 0.0.0.0:4000,0.0.0.0:4200,0.0.0.0:4300 --interface enp0s25 --manifest /var/www/html/hls --identity 20 --hls --dash
- Check the Docker container
cannonbeach@insomniacoffee:$: sudo docker ps (or use "sudo docker ps -a" for all of the containers)
- Stop the Docker container
cannonbeach@insomniacoffee:$: sudo docker stop livestream1 (you can also start it back up again!)
- Remove the Docker container
cannonbeach@insomniacoffee:$: sudo docker remove livestream1
If you need to update the image, you'll want to remove the old image using (docker rmi image-id).