mirror of
https://gitlab.redox-os.org/redox-os/redox.git
synced 2026-07-03 01:58:41 +08:00
Merge branch 'server-demo' into 'master'
Add server demo and add more server packages to CI See merge request redox-os/redox!1646
This commit is contained in:
commit
a4e3901d3f
@ -162,6 +162,12 @@ data = ""
|
||||
directory = true
|
||||
mode = 0o755
|
||||
|
||||
[[files]]
|
||||
path = "/var/run"
|
||||
data = ""
|
||||
directory = true
|
||||
mode = 0o755
|
||||
|
||||
[[files]]
|
||||
path = "/var/tmp"
|
||||
data = ""
|
||||
|
||||
@ -27,6 +27,7 @@ base-initfs = {}
|
||||
bash = {}
|
||||
binutils = {}
|
||||
bootloader = {}
|
||||
bzip2 = {}
|
||||
ca-certificates = {}
|
||||
cairo = {}
|
||||
#cairodemo = {} # linking errors
|
||||
@ -34,6 +35,7 @@ cairo = {}
|
||||
cargo = {}
|
||||
cleye = {}
|
||||
#cmatrix = {} # needs ncursesw now
|
||||
composer = {}
|
||||
contain = {}
|
||||
coreutils = {}
|
||||
cosmic-edit = {}
|
||||
@ -94,22 +96,29 @@ kernel = {}
|
||||
kibi = {}
|
||||
lci = {}
|
||||
libc-bench = {}
|
||||
libavif = {}
|
||||
libedit = {}
|
||||
libffi = {}
|
||||
libgcc = {}
|
||||
libgmp = {}
|
||||
libiconv = {}
|
||||
libicu = {}
|
||||
libjpeg = {}
|
||||
libogg = {}
|
||||
libonig = {}
|
||||
liborbital = {}
|
||||
libpng = {}
|
||||
libstdcxx = {}
|
||||
libsodium = {}
|
||||
libvorbis = {}
|
||||
libwebp = {}
|
||||
libxkbcommon = {}
|
||||
libuuid = {}
|
||||
libxml2 = {}
|
||||
llvm18 = {}
|
||||
lsd = {}
|
||||
lua54 = {}
|
||||
lz4 = {}
|
||||
#mdp = {} # gcc hangs
|
||||
mednafen = {}
|
||||
mesa = {}
|
||||
@ -128,10 +137,13 @@ neverball = {}
|
||||
#newlib = {} # obsolete
|
||||
#newlibtest = {} # obsolete
|
||||
nghttp2 = {}
|
||||
nginx = {}
|
||||
#nushell = {} # needs cargo update
|
||||
onefetch = {}
|
||||
openjazz = {}
|
||||
openssh = {}
|
||||
openssl1 = {}
|
||||
openssl3 = {}
|
||||
openttd = {}
|
||||
openttd-opengfx = {}
|
||||
openttd-openmsx = {}
|
||||
@ -154,6 +166,7 @@ patchelf = {}
|
||||
pcre = {}
|
||||
perg = {}
|
||||
periodictable = {}
|
||||
php84 = {}
|
||||
#perl5 = {} # ctermid, tempnam, ttyname
|
||||
pixelcannon = {}
|
||||
#pixman = {} # depends on glib which does not build
|
||||
@ -164,7 +177,7 @@ pop-icon-theme = {}
|
||||
#powerline = {} # dirs
|
||||
prboom = {}
|
||||
procedural-wallpapers-rs = {}
|
||||
#python37 = {} # getaddrinfo
|
||||
python312 = {}
|
||||
#qemu = {} # can be built, but not working
|
||||
readline = {}
|
||||
redoxerd = {}
|
||||
@ -179,6 +192,7 @@ resist = {}
|
||||
ripgrep = {}
|
||||
rodioplay = {}
|
||||
rs-nes = {}
|
||||
rsync = {}
|
||||
rust = {}
|
||||
rust64 = {}
|
||||
#rust-cairo = {} # linking errors
|
||||
@ -207,7 +221,7 @@ simple-http-server = {}
|
||||
smith = {}
|
||||
sodium = {}
|
||||
sopwith = {}
|
||||
#openssh = {}
|
||||
sqlite3 = {}
|
||||
strace = {}
|
||||
#syobonaction = {} # linking errors
|
||||
terminfo = {}
|
||||
@ -224,5 +238,7 @@ vttest = {}
|
||||
#webrender = {} # unwind
|
||||
#wesnoth = {}
|
||||
winit = {}
|
||||
xxhash = {}
|
||||
xz = {}
|
||||
zlib = {}
|
||||
zstd = {}
|
||||
|
||||
199
config/x86_64/server-demo.toml
Normal file
199
config/x86_64/server-demo.toml
Normal file
@ -0,0 +1,199 @@
|
||||
# Configuration for server stack demonstration
|
||||
|
||||
include = ["../server.toml"]
|
||||
|
||||
# General settings
|
||||
[general]
|
||||
# Filesystem size in MiB
|
||||
filesystem_size = 4096
|
||||
|
||||
# Package settings
|
||||
[packages]
|
||||
# Daemons
|
||||
openssh = {}
|
||||
nginx = {}
|
||||
|
||||
# Backends
|
||||
php84 = {}
|
||||
composer = {}
|
||||
luajit = {}
|
||||
python312 = {}
|
||||
# go = {}
|
||||
# zig = {}
|
||||
|
||||
# Tools
|
||||
nano = {}
|
||||
neovim = {}
|
||||
rsync = {}
|
||||
vim = {}
|
||||
sqlite3 = {}
|
||||
# tmux = {}
|
||||
# htop = {}
|
||||
|
||||
# Content
|
||||
website = {}
|
||||
|
||||
[[files]]
|
||||
path = "/home/user/public_html/index.php"
|
||||
data = """
|
||||
<?php
|
||||
|
||||
echo "Hello from PHP on Redox!";
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
path = "/home/user/public_html/phpinfo.php"
|
||||
data = """
|
||||
<?php phpinfo();
|
||||
"""
|
||||
|
||||
|
||||
[[files]]
|
||||
path = "/home/user/public_html/README"
|
||||
data = """
|
||||
This is a demonstration into PHP server.
|
||||
|
||||
At the moment to run composer you have to run it like:
|
||||
> php /bin/composer install
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
postinstall = true
|
||||
data = ""
|
||||
path = "/etc/nginx/conf.d"
|
||||
directory = true
|
||||
|
||||
[[files]]
|
||||
postinstall = true
|
||||
path = "/etc/nginx/nginx.conf"
|
||||
data = """
|
||||
user nginx;
|
||||
worker_processes auto;
|
||||
error_log /var/log/nginx/error.log;
|
||||
pid /var/run/nginx.pid;
|
||||
|
||||
events {
|
||||
worker_connections 1024;
|
||||
}
|
||||
http {
|
||||
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
||||
'$status $body_bytes_sent "$http_referer" '
|
||||
'"$http_user_agent" "$http_x_forwarded_for"';
|
||||
access_log /var/log/nginx/access.log main;
|
||||
|
||||
include mime.types;
|
||||
include fastcgi.conf;
|
||||
default_type application/octet-stream;
|
||||
|
||||
include /etc/nginx/conf.d/*.conf;
|
||||
}
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
postinstall = true
|
||||
path = "/etc/nginx/conf.d/localhost.conf"
|
||||
data = """
|
||||
server {
|
||||
listen 80;
|
||||
server_name localhost;
|
||||
root /usr/share/website;
|
||||
|
||||
location / {
|
||||
index index.html index.htm;
|
||||
}
|
||||
}
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
postinstall = true
|
||||
path = "/etc/nginx/conf.d/php-www.conf"
|
||||
data = """
|
||||
server {
|
||||
listen 8081;
|
||||
server_name localhost;
|
||||
root /home/user/public_html;
|
||||
|
||||
index index.php index.html index.htm;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ =404;
|
||||
}
|
||||
|
||||
location ~ \\.php$ {
|
||||
include fastcgi_params;
|
||||
fastcgi_pass 127.0.0.1:9000;
|
||||
fastcgi_index index.php;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
}
|
||||
}
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
postinstall = true
|
||||
path = "/etc/php/84/php-fpm.conf"
|
||||
data = """
|
||||
|
||||
include=/etc/php/84/php-fpm.d/*.conf
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
postinstall = true
|
||||
path = "/etc/php/84/php-fpm.d/www.conf"
|
||||
data = """
|
||||
[www]
|
||||
user = user
|
||||
group = user
|
||||
listen = 127.0.0.1:9000
|
||||
pm = static
|
||||
pm.max_children = 1
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
postinstall = true
|
||||
path = "/etc/ssh/sshd_config"
|
||||
data = """
|
||||
Port 22
|
||||
AddressFamily inet
|
||||
AuthorizedKeysFile .ssh/authorized_keys
|
||||
PermitRootLogin yes
|
||||
PasswordAuthentication yes
|
||||
PermitEmptyPasswords yes
|
||||
Subsystem sftp /usr/libexec/sftp-server
|
||||
"""
|
||||
|
||||
[users.nobody]
|
||||
password = ""
|
||||
shell = "/usr/bin/ion" #TODO: nologin?
|
||||
|
||||
[users.nginx]
|
||||
password = ""
|
||||
shell = "/usr/bin/ion" #TODO: nologin?
|
||||
|
||||
[[files]]
|
||||
path = "/home/user/server.sh"
|
||||
data = """
|
||||
#!/usr/bin/env bash
|
||||
|
||||
/bin/sshd -D &
|
||||
nginx -g "daemon off;" &
|
||||
php-fpm --nodaemonize &
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
path = "/home/user/Welcome.txt"
|
||||
data = """
|
||||
##############################################################################
|
||||
# Welcome to Redox Server Demo!
|
||||
#
|
||||
# This is a quick demonstration of Redox used as server stack.
|
||||
# At the moment we support SSH, NGINX, Python, PHP. There's more to come
|
||||
#
|
||||
# This server demo is insecure by design, we encourage you to get familiar into
|
||||
# basics of server security if you wish to use this as a production server.
|
||||
#
|
||||
# To start the daemon, run
|
||||
# > sudo bash server.sh
|
||||
#
|
||||
# The server will start port 22 (ssh), 80 (static web) and 8080 (php)
|
||||
##############################################################################
|
||||
"""
|
||||
Loading…
Reference in New Issue
Block a user