Jump to content

Steam Caching Tutorial

jakkuh_t

While I was trying to do some data recovery on a failed HDD, I got a prompt that I was running out of space on my 1TB SSD that I typically use for steamcache.

 

When look at df, it says 871GB used... But Disk Usage Analyzer doesn't match the usage.

 

Has anyone ran into this?

steam-cache-disc-usage.png

steam-cache-disk-usage.png

Link to comment
Share on other sites

Link to post
Share on other sites

I didn't realize; but I had to escalate permissions for Disk Usage Analyzer.

 

Quote

sudo baobab

Also didn't realize I should have specified CACHE_MAX_AGE

 

sudo-baobab.png

Link to comment
Share on other sites

Link to post
Share on other sites

On 12/4/2019 at 10:31 AM, deadmeatgames said:

go here https://lancache.net/ and use the lancache/monolithic

Hi, i started this in my Synology Diskstation  - Docker.

How can i see if it works, in the logs i can´t see any errors but i also dont see any increase in Downloadspeed.

Or must i setup anything else? My DNS and DHCP-Server also runs on the Diskstation.

Link to comment
Share on other sites

Link to post
Share on other sites

Hey @jakkuh_t , it appears that Steam no longer uses HTTP. As far as I know it uses HTTPS now. Due to this, I'm unable to cache Steam downloads and updates. Does anyone know if there is any way to change what Steam uses for downloads?

 

I know this tutorial was posted over a year ago, and I don't think that it works for Steam anymore.

EDIT: I can confirm that it doesn't work for Steam or Origin

Edited by JeffBewinski
Link to comment
Share on other sites

Link to post
Share on other sites

@jakkuh_t Seems like it may be borked according to @JeffBewinski

Brands I wholeheartedly reccomend (though do have flawed products): Apple, Razer, Corsair, Asus, Gigabyte, bequiet!, Noctua, Fractal, GSkill (RAM only)

Wall Of Fame (Informative people/People I like): @Glenwing @DrMacintosh @Schnoz @TempestCatto @LogicalDrm @Dan Castellaneta

Useful threads: 

How To Make Your Own Cloud Storage

Spoiler

 

Guide to Display Cables/Adapters

Spoiler

 

PSU Tier List (Latest)-

Spoiler

 

 

Main PC: See spoiler tag

Laptop: 2020 iPad Pro 12.9" with Magic Keyboard

Spoiler

PCPartPicker Part List: https://pcpartpicker.com/list/gKh8zN

CPU: AMD Ryzen 9 3900X 3.8 GHz 12-Core OEM/Tray Processor  (Purchased For $419.99) 
Motherboard: Asus ROG Crosshair VIII Formula ATX AM4 Motherboard  (Purchased For $356.99) 
Memory: G.Skill Trident Z RGB 32 GB (2 x 16 GB) DDR4-3000 Memory  (Purchased For $130.00) 
Storage: Kingston Predator 240 GB M.2-2280 NVME Solid State Drive  (Purchased For $40.00) 
Storage: Crucial MX300 1.05 TB 2.5" Solid State Drive  (Purchased For $100.00) 
Storage: Western Digital Red 8 TB 3.5" 5400RPM Internal Hard Drive  (Purchased For $180.00) 
Video Card: Gigabyte GeForce RTX 2070 8 GB WINDFORCE Video Card  (Purchased For $370.00) 
Case: Fractal Design Define R6 USB-C ATX Mid Tower Case  (Purchased For $100.00) 
Power Supply: Corsair RMi 1000 W 80+ Gold Certified Fully Modular ATX Power Supply  (Purchased For $120.00) 
Optical Drive: Asus DRW-24B1ST/BLK/B/AS DVD/CD Writer  (Purchased For $75.00) 
Total: $1891.98
Prices include shipping, taxes, and discounts when available
Generated by PCPartPicker 2020-04-02 19:59 EDT-0400

身のなわたしはる果てぞ  悲しわたしはかりけるわたしは

Link to comment
Share on other sites

Link to post
Share on other sites

So i went back to this thread to setup my steamcache server but i seems like steamcache has actually migrate to lancachenet/generic on docker and github! So i took the time to make an updated version of this if anyone was trying to do it as of December 2019! here we go!

 

**I'm using Ubuntu Server 18.04 LTS since we won't need graphical interface to run all this**
1.  After installing Ubuntu

sudo apt update -y && sudo apt upgrade -y

2. add the IP addresses! 

cd /etc/netplan

then

sudo nano 50-cloud-init.yaml

or

sudo vi 50-cloud-init.yaml

change every GAMECACHE_IP to actual ip (be sure it's not taken by other devices!)

**tip: you can use the mobile app "fings" to see all the taken ip!**

 

network:
    ethernets:
        enp4s0:
            addresses:
            - 192.168.1.50/24
            - FIRST_IP/32
            - SECOND_IP/32
            - THIRD_IP/32
            - FOURTH_IP/32
            - FIFTH_IP/32
            gateway4: 192.168.1.1
            nameservers:
                addresses:
                - 1.1.1.1
                - 1.0.0.1
    version: 2

then do

sudo netplan apply

To confirm if it work ping form another computer the ip you added.

 

4. Docker Installation! run these 2 commands:

curl -fsSL get.docker.com -o get-docker.sh
 sh get-docker.sh

5. (Optional) need to do a RAID 0,1,5,6,10? here's a link how to do it! here

 

6. install needed games services and change location and IP!

take note those are the services available: BLIZZARDCACHE_IP, FRONTIERCACHE_IP, ORIGINCACHE_IP, RIOTCACHE_IP, STEAMCACHE_IP, UPLAYCACHE_IP and WINDOWSCHACHE_IP

sudo docker run \
--restart unless-stopped -d \
--name cache-steam \
-v /CHANGE/ME/cache/steam/data:/data/cache \
-v /CHANGE/ME/cache/steam/logs:/data/logs \
-p 192.168.1.51:80:80 \
lancachenet/generic:latest

sudo docker run \
--restart unless-stopped -d \
--name origin-cache \
-v /CHANGE/ME/cache/origin/data:/data/cache \
-v /CHANGE/ME/cache/origin/logs:/data/logs \
-p 192.168.1.52:80:80 \
lancachenet/generic:latest

sudo docker run \
--restart unless-stopped -d \
--name blizzard-cache \
-v /CHANGE/ME/cache/blizzard/data:/data/cache \
-v /CHANGE/ME/cache/blizzard/logs:/data/logs \
-p 192.168.1.53:80:80 \
lancachenet/generic:latest

sudo docker run \
--restart unless-stopped -d \
--name uplay-cache \
-v /CHANGE/ME/cache/uplay/data:/data/cache \
-v /CHANGE/ME/cache/uplay/logs:/data/logs \
-p 192.168.1.54:80:80 \
lancachenet/generic:latest

sudo docker run \
--restart unless-stopped -d \
--name windows-cache \
-v /CHANGE/ME/cache/windows/data:/data/cache \
-v /CHANGE/ME/cache/windows/logs:/data/logs \
-p 192.168.1.55:80:80 \
lancachenet/generic:latest

7. Start caching service!

sudo docker run \
  --restart unless-stopped -d \
  --name steamcache-dns \
  -p 192.168.1.51:53:53/udp \
  -e UPSTREAM_DNS=1.1.1.1 \
  -e STEAMCACHE_IP=192.168.1.51 \
  -e ORIGINCACHE_IP=192.168.1.52 \
  -e BLIZZARDCACHE_IP=192.168.1.53 \
  -e UPLAYCACHE_IP=192.168.1.54 \
  -e WINDOWSCACHE_IP=192.168.1.55 \
  lancachenet/lancache-dns:latest

8. SSL configuration for some game services like Origin:

sudo docker run \
  --restart unless-stopped -d \
  --name sniproxy \
  -p 443:443 \
  lancachenet/sniproxy:latest

9. (optional)need monitoring your system? get netdata to run in a docker!

sudo docker run -d --name=netdata \
  -p 19999:19999 \
  -v /etc/passwd:/host/etc/passwd:ro \
  -v /etc/group:/host/etc/group:ro \
  -v /proc:/host/proc:ro \
  -v /sys:/host/sys:ro \
  --cap-add SYS_PTRACE \
  --security-opt apparmor=unconfined \
  netdata/netdata

then you can see those stats with either by 127.0.0.1:19999 if directly or with the computer local ip address: IPADDRESS:19999

 

you need to change either you router DNS ip address or you computer DHCP DNS to the caching server!

 

done!

 

Might not be well formatted? I'm writing this before going to work. Let me know if there is something i missed!

Link to comment
Share on other sites

Link to post
Share on other sites

  • 1 month later...
On 12/17/2019 at 11:17 PM, vinc.delta said:

So i went back to this thread to setup my steamcache server but i seems like steamcache has actually migrate to lancachenet/generic on docker and github! So i took the time to make an updated version of this if anyone was trying to do it as of December 2019! here we go!

 

**I'm using Ubuntu Server 18.04 LTS since we won't need graphical interface to run all this**
1.  After installing Ubuntu


sudo apt update -y && sudo apt upgrade -y

2. add the IP addresses! 


cd /etc/netplan

then


sudo nano 50-cloud-init.yaml

or


sudo vi 50-cloud-init.yaml

change every GAMECACHE_IP to actual ip (be sure it's not taken by other devices!)

**tip: you can use the mobile app "fings" to see all the taken ip!**

 


network:
    ethernets:
        enp4s0:
            addresses:
            - 192.168.1.50/24
            - FIRST_IP/32
            - SECOND_IP/32
            - THIRD_IP/32
            - FOURTH_IP/32
            - FIFTH_IP/32
            gateway4: 192.168.1.1
            nameservers:
                addresses:
                - 1.1.1.1
                - 1.0.0.1
    version: 2

then do


sudo netplan apply

To confirm if it work ping form another computer the ip you added.

 

4. Docker Installation! run these 2 commands:


curl -fsSL get.docker.com -o get-docker.sh
 sh get-docker.sh

5. (Optional) need to do a RAID 0,1,5,6,10? here's a link how to do it! here

 

6. install needed games services and change location and IP!

take note those are the services available: BLIZZARDCACHE_IP, FRONTIERCACHE_IP, ORIGINCACHE_IP, RIOTCACHE_IP, STEAMCACHE_IP, UPLAYCACHE_IP and WINDOWSCHACHE_IP


sudo docker run \
--restart unless-stopped -d \
--name cache-steam \
-v /CHANGE/ME/cache/steam/data:/data/cache \
-v /CHANGE/ME/cache/steam/logs:/data/logs \
-p 192.168.1.51:80:80 \
lancachenet/generic:latest

sudo docker run \
--restart unless-stopped -d \
--name origin-cache \
-v /CHANGE/ME/cache/origin/data:/data/cache \
-v /CHANGE/ME/cache/origin/logs:/data/logs \
-p 192.168.1.52:80:80 \
lancachenet/generic:latest

sudo docker run \
--restart unless-stopped -d \
--name blizzard-cache \
-v /CHANGE/ME/cache/blizzard/data:/data/cache \
-v /CHANGE/ME/cache/blizzard/logs:/data/logs \
-p 192.168.1.53:80:80 \
lancachenet/generic:latest

sudo docker run \
--restart unless-stopped -d \
--name uplay-cache \
-v /CHANGE/ME/cache/uplay/data:/data/cache \
-v /CHANGE/ME/cache/uplay/logs:/data/logs \
-p 192.168.1.54:80:80 \
lancachenet/generic:latest

sudo docker run \
--restart unless-stopped -d \
--name windows-cache \
-v /CHANGE/ME/cache/windows/data:/data/cache \
-v /CHANGE/ME/cache/windows/logs:/data/logs \
-p 192.168.1.55:80:80 \
lancachenet/generic:latest

7. Start caching service!


sudo docker run \
  --restart unless-stopped -d \
  --name steamcache-dns \
  -p 192.168.1.51:53:53/udp \
  -e UPSTREAM_DNS=1.1.1.1 \
  -e STEAMCACHE_IP=192.168.1.51 \
  -e ORIGINCACHE_IP=192.168.1.52 \
  -e BLIZZARDCACHE_IP=192.168.1.53 \
  -e UPLAYCACHE_IP=192.168.1.54 \
  -e WINDOWSCACHE_IP=192.168.1.55 \
  lancachenet/lancache-dns:latest

8. SSL configuration for some game services like Origin:


sudo docker run \
  --restart unless-stopped \
  --name sniproxy \
  -p 443:443 \
  lancachenet/sniproxy:latest

9. (optional)need monitoring your system? get netdata to run in a docker!


docker run -d --name=netdata \
  -p 19999:19999 \
  -v /etc/passwd:/host/etc/passwd:ro \
  -v /etc/group:/host/etc/group:ro \
  -v /proc:/host/proc:ro \
  -v /sys:/host/sys:ro \
  --cap-add SYS_PTRACE \
  --security-opt apparmor=unconfined \
  netdata/netdata

then you can see those stats with either by 127.0.0.1:19999 if directly or with the computer local ip address: IPADDRESS:19999

 

you need to change either you router DNS ip address or you computer DHCP DNS to the caching server!

 

done!

 

Might not be well formatted? I'm writing this before going to work. Let me know if there is something i missed!

i have followed this one and i didnt work for steam :/

Link to comment
Share on other sites

Link to post
Share on other sites

Is there a minimum requirement for the CPU and RAM? I am thinking using an old netbook as one. Most of the time will be only one computer will be download from it and at the most will be two.

Link to comment
Share on other sites

Link to post
Share on other sites

  • 3 weeks later...
On 1/20/2020 at 5:05 PM, TLCH723 said:

Is there a minimum requirement for the CPU and RAM? I am thinking using an old netbook as one. Most of the time will be only one computer will be download from it and at the most will be two.

A minimum cpu would be 4 and ram would be about 4 to 8Gb depending if you want to have the full Gbps experience

Link to comment
Share on other sites

Link to post
Share on other sites

On 1/17/2020 at 8:14 PM, OKOIOKOK said:

i have followed this one and i didn't work for steam :/

I think there was this part i forgot to add!

sudo docker run \
--restart unless-stopped -d \
--name steam-cache \
-v /CHANGE/ME/cache/steam/data:/data/cache \
-v /CHANGE/ME/cache/steam/logs:/data/logs \
-p 192.168.1.50:80:80 \
lancachenet/generic:latest

 

Link to comment
Share on other sites

Link to post
Share on other sites

On 12/17/2019 at 3:17 PM, vinc.delta said:

 

8. SSL configuration for some game services like Origin:


sudo docker run \
  --restart unless-stopped \
  --name sniproxy \
  -p 443:443 \
  lancachenet/sniproxy:latest

 

Think you dropped the -d on this one, was trying your guide myself and noticed that it didn't detach.

 

On another note, I had this same problem with the monolithic version of lancache. I went through your guide, all the containers are running but I'm not seeing anything caching. There is no activity in any of the container logs, any idea?

Link to comment
Share on other sites

Link to post
Share on other sites

If you are stuck with the port in ubuntu, you may use these two lines. You should be able to install docker and monolithic cache after this.

sudo sed -r -i.orig 's/#?DNSStubListener=yes/DNSStubListener=no/g' /etc/systemd/resolved.conf

sudo sh -c 'rm /etc/resolv.conf && ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf'

Link to comment
Share on other sites

Link to post
Share on other sites

  • 2 weeks later...

help, what do I do now ?

image.png

i9-9900k 5.0ghz, 16gb Corsair 3600mhz, Asrock phantom itx z390 Mobo, RTX 3060ti, 1TB+1TB Western digital NVME, InWin A1, Noctua NH-U12S

 

Link to comment
Share on other sites

Link to post
Share on other sites

44 minutes ago, T0MMEN said:

help, what do I do now ?

image.png

They move the project to lancachenet/monolithic. You can follow the update i've made in the comment. Though i think i need to test it again to see if it's still working the way i did it.

Link to comment
Share on other sites

Link to post
Share on other sites

On 2/13/2020 at 2:10 AM, vinc.delta said:

I think there was this part i forgot to add!


sudo docker run \
--restart unless-stopped -d \
--name steam-cache \
-v /CHANGE/ME/cache/steam/data:/data/cache \
-v /CHANGE/ME/cache/steam/logs:/data/logs \
-p 192.168.1.50:80:80 \
lancachenet/generic:latest

 

  

image.png

I only get error after error with this steam cache.....

 

image.png.396840843aca26a301846e04f7787c62.png

i9-9900k 5.0ghz, 16gb Corsair 3600mhz, Asrock phantom itx z390 Mobo, RTX 3060ti, 1TB+1TB Western digital NVME, InWin A1, Noctua NH-U12S

 

Link to comment
Share on other sites

Link to post
Share on other sites

On 3/8/2020 at 6:21 PM, vinc.delta said:

They move the project to lancachenet/monolithic. You can follow the update i've made in the comment. Though i think i need to test it again to see if it's still working the way i did it.

Could you help me? I installed ubuntu 18.04, and im stuck at the sniproxy install, it just says status: Downloaded newer image for lancachenet/sniproxy:latest

 

And nothing happens in the terminal. These are the commands i used


image.png.f3957ab19f568a1a66b4b9c125e4a7cb.png

i9-9900k 5.0ghz, 16gb Corsair 3600mhz, Asrock phantom itx z390 Mobo, RTX 3060ti, 1TB+1TB Western digital NVME, InWin A1, Noctua NH-U12S

 

Link to comment
Share on other sites

Link to post
Share on other sites

16 hours ago, T0MMEN said:

Could you help me? I installed ubuntu 18.04, and im stuck at the sniproxy install, it just says status: Downloaded newer image for lancachenet/sniproxy:latest

 

And nothing happens in the terminal. These are the commands i used


image.png.f3957ab19f568a1a66b4b9c125e4a7cb.png

As Darigitin mentioned, it's missing the -d flag as seen in the original post.

Link to comment
Share on other sites

Link to post
Share on other sites

sudo docker run \
>   --restart unless-stopped -d \
>   --name steam-cache \
>   -v /home/picache/cache/steam/data:/data/cache \
>   -v /home/picache/cache/steam/logs:/data/logs \
>   -p 192.168.50.242:80:80 \
>   lancachenet/monolithic:latest
Unable to find image 'lancachenet/monolithic:latest' locally
latest: Pulling from lancachenet/monolithic
423ae2b273f4: Pull complete
de83a2304fa1: Pull complete
f9a83bce3af0: Pull complete
b6b53be908de: Pull complete
01d8d041f6ad: Pull complete
1d013f8d1769: Pull complete
0d1b877c6cdd: Pull complete
e77ccd94e5e9: Pull complete
900daf1e4c99: Pull complete
06436e541553: Pull complete
594b40f9f859: Pull complete
8090394cc9cb: Pull complete
01b065e63ee7: Pull complete
4d0fed6a5b60: Pull complete
2c3736c26cd9: Pull complete
c32656f14857: Pull complete
db58e9c4b302: Pull complete
Digest: sha256:832cc97fb0fd4e09dc3337179f82c7220bdfb1d5661f07b4dde1e5d998c40fe8
Status: Downloaded newer image for lancachenet/monolithic:latest
597304b6c7cd10e063abc6e402c5233eb732e5937ec8af2bafbfffb03dd86327
docker: Error response from daemon: driver failed programming external connectivity on endpoint steam-cache (de9389ca06113358eb6a0bf70ace3be01eadda4ce8f043d2650f8601cb805006): Error starting userland proxy: listen tcp 192.168.50.242:80: bind: address already in use.



Does anyone know how to fix this?

i9-9900k 5.0ghz, 16gb Corsair 3600mhz, Asrock phantom itx z390 Mobo, RTX 3060ti, 1TB+1TB Western digital NVME, InWin A1, Noctua NH-U12S

 

Link to comment
Share on other sites

Link to post
Share on other sites

11 hours ago, T0MMEN said:

 Error starting userland proxy: listen tcp 192.168.50.242:80: bind: address already in use.



Does anyone know how to fix this?

Something is already using port 80, which is used to serve web traffic. This could be from something like apache or lighttpd or nginx running. It could also be from the previous containers you tried creating.

Link to comment
Share on other sites

Link to post
Share on other sites

5 hours ago, alenbasic said:

Something is already using port 80, which is used to serve web traffic. This could be from something like apache or lighttpd or nginx running. It could also be from the previous containers you tried creating.

So I have to do a fresh install of ubuntu and try again ?

i9-9900k 5.0ghz, 16gb Corsair 3600mhz, Asrock phantom itx z390 Mobo, RTX 3060ti, 1TB+1TB Western digital NVME, InWin A1, Noctua NH-U12S

 

Link to comment
Share on other sites

Link to post
Share on other sites

Out of interest and curiosity can this be run in the windows subsystem? Also with the failure to bind to port 80, can  I get around  this by running my web server on a VM, and keeping my domain controller & cache (If it can be run from the subsystem) on the main instance?

My Folding Stats Join the fight against COVID-19 with FOLDING! 

 

Aviation Engineer by day,

Game Developer by Night,

IT Engineer for a Hobby,

Husband in between!

 

Proud creator of EvoCore! 

https://play.google.com/store/apps/details?id=com.retrodex.evocore&hl=en

https://apps.apple.com/gb/app/evocore/id1459714064

Link to comment
Share on other sites

Link to post
Share on other sites

Found a way to get pi hole and steam cache working at the same time, first install and setup pihole.

 

The follow this guid for steamcache https://lurkingforgames.com/lancache

Then in pihole settings: 192.168.x.x/admin uncheck google and all other dns, then set upstream dns as your steamcache server,  set router ip as pihole adress 192.168.x.x

 

Therer u go, took me a while, but not it works!

i9-9900k 5.0ghz, 16gb Corsair 3600mhz, Asrock phantom itx z390 Mobo, RTX 3060ti, 1TB+1TB Western digital NVME, InWin A1, Noctua NH-U12S

 

Link to comment
Share on other sites

Link to post
Share on other sites

On 8/20/2018 at 4:12 PM, jakkuh_t said:

--snip--

This guide is out of date / not the most recommended way to set this up anymore. There is a much easier container to use now that doesn't require adding more IPs or a lot of the fuss you have. I understand if you don't have time/resources to update the guide, but I think it would be good to add a note at the top of the post to the effect of "This guide is outdated, please see http://lancache.net/docs/ (If you need help with getting a Linux system with Docker, then you can follow the instructions below up to step 4."

Looking to buy GTX690, other multi-GPU cards, or single-slot graphics cards: 

 

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×