curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh source ~/.cargo/env sudo apt install mysql-server mysql-client libmysqlclient-dev sudo systemctl start mysql sudo systemctl enable mysql
cp env.example .env
cargo install sqlx-cli --features mysql
sqlx migrate run --database-url "mysql://portfolio_user:password@localhost/portfolio"
cargo run
cargo build --release
cp ./target/release/portfolio-backend .
- Create portfolio-backend.service file into /lib/systemd/system
- Move executable into folder that is noted in service file alongside of static, templates, uploads and .env file
mkdir -p ~/felixcaldeira.de
cp -r ./target/release/portfolio-backend ./.env ./static ./uploads ./templates ~/felixcaldeira.de/
sudo systemctl daemon-reload
sudo systemctl start portfolio-backend
sudo systemctl enable portfolio-backend