It is a simple server listening on a port and returning a string. What sort of project would I create that will start the app? And can I just copy the executable into the folder?
There is apparently a game server called a Rust Server but this app isn’t that. Just a simple server app written in Rust.
Hey there, long time no see @tleylan!
So we don’t fully support Rust, in that our containers are not up to date with the latest version (we’re working on this!), but here’s an old app that can point you in the right direction on how to get started: Rust Web Server
Hi there. Thanks I will definitely check it out and see if my app will run.
Let me know if you run into any issues here so I can make sure the team knows what pain points you hit since we’re exploring better Rust support!
Appreciate it. It pulled the code from the github repo but it didn’t try to build or there should have been an output directory. The static index page appears but the server is surely not running.
It could be the way the repo is set up with two projects and a library but I don’t know how the .toml files work so I can’t really edit anything.
Thanks I suspected something like that. I have the server as a binary as well so I don’t actually have to build it. I get a feeling it won’t run here too easily.
Glitch has rustup installed so you can quite easily update rustc to the latest version, however glitch’s default (1.32.0 I think?) might be good enough for you (bear in mind 1.70.0 is the latest) in which case you won’t need to install anything extra. By default glitch’s rustc installation is in
/opt/multirust/rustc but you donpt have write access to that so you need to install into
/tmp - the
target dir is also in
/opt so you need to have that in
/tmp as well, unless you don’t need a lot of disk space for compilation in which case you can have your target dir in
You’ll need to run the following in your install script:
mkdir -p /tmp/rust && mkdir -p /tmp/rust/rustup && mkdir -p /tmp/rust/cargo && mkdir -p /tmp/rust/target && export RUSTUP_HOME=/tmp/rust/rustup && export CARGO_HOME=/tmp/rust/cargo && export CARGO_TARGET_DIR=/tmp/rust/target && rustup update stable
Of course feel free to change where those dirs are. Your
start script would just be
cargo run I’d imagine. Both these scripts should be in
glitch.json - I canpt remember exactly how itps laid out but Glitch: The friendly community where everyone builds the web has some info on it iirc.
I’ve found that these env vars that you set in your install script don’t always stick around though, so you might have to set them again in your
start script before running
I’ve never built a web server in rust before so i have no idea if this’d work, but the process as a whole did work well when i was trying out the new fastly compute@edge stuff.
Hopefully this will help in some way