Deploy
Method 1 - Docker (Recommended)
This is the recommended method for deploying on a VPS or home server. Experience with Docker, domains and web hosting is recommended.
P-Stream does not have a Docker image for the proxy, but there is a Dockerfile within the repo.
-
Clone the repo on your server:
git clone https://github.com/okikio/mov-proxy -
Locate the
Dockerfilein the root folder. -
Build the Docker image:
docker build -t mov-proxy ./mov-proxy -
(Optional) Create and edit a
.envfile in themov-proxydirectory to configure secrets such asJWT_SECRETand other environment variables as documented in the configuration guide. -
Run the Docker container (replace values as needed):
docker run -d --name mov-proxy -p 3000:3000 --env-file .env mov-proxy -
(Optional) Configure your firewall or reverse proxy (such as NGINX or Caddy) to expose port
3000or your desired HTTP/HTTPS port.
The container exposes the HTTP port (Without TLS/SSL) as 3000/TCP.
Method 2 - Manual (Advanced)
This method is for advanced users who want full control over their deployment. We recommend using automated package managers like nixpacks for easier deployment.
Manually installing the proxy on your server. You may want to use an automated package manager like nixpacks to do this.
-
Clone the repo on your server
git clone https://github.com/okikio/mov-proxy -
Navigate to the directory
cd mov-proxy -
Install packages
pnpm i -
Build the app
pnpm build -
Start the proxy
pnpm start
You’ll need to configure port forwarding and firewall settings. Good luck.
Deprecated Methods
Method 3 - Cloudflare (DEPRECATED)
Cloudflare has a generous free plan, so you don’t need to pay anything unless you get thousands of users.
-
Create a GitHub account at https://github.com if you don’t have one.
-
Click the
Deploy with workersbutton above. -
Configure any additional settings if desired.
-
Click
Deployto deploy to Cloudflare Workers. -
Congratulations! Your worker is now deploying. Please wait for the GitHub Action to build and publish your worker.
-
You can click the
Worker dashandGitHub repobuttons to see the status of the deploy. -
When the worker has deployed, you will need to take note of the URL. This can be found on Cloudflare under Workers and Pages -> Overview -> Proxy.
-
Use the URL you took note of and set up a custom proxy in the client.
Method 4 - Netlify (DEPRECATED)
Netlify has a very generous free plan, so you’ll be able to host your proxy for free unless you get hundreds of users.
-
Create a GitHub account at https://github.com/signup if you don’t have one already.
-
Click on the
Deploy to Netlifybutton above. Authorize Netlify to connect with GitHub by clicking theConnect to GitHubbutton. -
There should now be a
Save & Deploybutton, click it. -
Once the deployment is complete, click on the
Get Startedbutton that pops up, this will redirect you to the dashboard of your site. -
Click on the only site in the
Sitessection of your dashboard. -
Find the link of your site near the top of the page, it should look something like
https://<random-words>.netlify.app. Right click the link, clickCopy link address. Now you’ll just have to set up the client!
Method 5 - Railway (DEPRECATED)
Railway provides $5 in free credits once you verify your account. These credits expire after 1 month and are usually enough to keep the proxy running for about that time. (Tip: You can delete your account and create a new one to receive additional credits.)
-
Login to your Railway account if you have one, otherwise create one here.
- If you are signing up, then verify your account by clicking the link in the email Railway sends you.
- If you created your account with an email, then to verify your account further, go to your account, then plans and verify your account with a GitHub account.
-
Click the
Deploy on Railwaybutton above. -
If a
Configurebutton is displayed, click on it and allow Railway to access your GitHub account. -
The
Deploybutton at the bottom of the template should be active, click on it. -
Once the proxy has deployed, copy the URL from the
Deploymentspage. -
Congratulations! You have deployed the proxy, you can now set up the client.