Dload, A download manager that runs inside a docker container
- Install Docker
- Run the following command to quickly create dload container:
docker run -d \
--name=dload \
-e PUID=1000 \
-e PGID=1000 \
-p 8080:80 \
-v ./config:/config \
-v ./downloads:/downloads \
--restart unless-stopped \
fuzzknob/dload
- Create
docker-compose.yml
file with this contents:
version: "3"
services:
dload:
container_name: dload
image: fuzzknob/dload
environment:
- PUID=1000
- PGID=1000
volumes:
- ./config:/config
- ./downloads:/downloads
ports:
- 8080:80
restart: unless-stopped
- Run the following command:
docker compose up -d
You can access the dload UI at http://localhost:8080
For development you can either use vscode devcontainer. Or run it locally with Node.js.
Just open this project in devcontainer and run:
yarn dev
You can access the client in http://localhost:8080
To run it locally you will need to have the following tools:
But before we run the app we need to change somethings:
- Change the url at client/request.ts:L4 to http://localhost:8000 and add ws://localhost:8000 at client/socket.ts:L3
- Replace line at server/socket.ts:L3 with
export const io = new Server({
cors: {
origin: 'http://localhost:3000',
methods: ['GET', 'POST'],
},
})
After run the following command:
yarn dev
You can access the application at:
- Server: http://localhost:8000
- Client: http://localhost:3000