快速網站工具。運行NIM文件並訪問您的網頁。網站:https://nimwc.org

在功能中查看更多
首先,您只需要:
1.6.14 (用 + 2.0測試)可選依賴項(默認情況下禁用):
libwebp )(僅在使用WebP時才需要)0.9.58 (僅在使用Firejail時才需要)xorg-server-xvfb ,Firejail設置noX= )要編譯並安裝您需要NIM。您可以使用Colecosim輕鬆安裝NIM:
curl https://nim-lang.org/choosenim/init.sh -sSf | sh
您只需要執行1A或1B或1C-而不是兩者。
# Install nimwc with nimble
nimble install nimwc
# Edit the config.cfg accordingly
# (change the confg.cfg path to your nimble folder and the correct package version)
nano ~ /.nimble/pkgs/nimwc-[PACKAGE-VERSION]/config/config.cfg
# Run nimwc
# (to add an Admin append the arg "newadmin": nimwc --newadmin)
# (to include some standard pages: nimwc --insertdata)
nimwc
# Login
127.0.0.1:7000/login這將在文件夾中生成可執行文件。
# Clone the repository
git clone https://github.com/ThomasTJdev/nim_websitecreator
cd nim_websitecreator
# Generate and edit the config.cfg accordingly
cp config/config_default.cfg config/config.cfg
nano config/config.cfg
# Compile
nimble -d:release build
# Run nimwc
# (to add an Admin append the arg "newadmin": nimwc --newadmin)
# (to include some standard pages: nimwc --insertdata)
./nimwc
# Login
127.0.0.1:7000/login這將指導您完成安裝。
curl https://raw.githubusercontent.com/ThomasTJdev/nim_websitecreator/master/devops/autoinstall.sh -sSf | sh
# OR
curl https://raw.githubusercontent.com/ThomasTJdev/nim_websitecreator/master/devops/autoinstall.sh -sSfLO && echo "6cc7510305db7b0ae5e3755137e71c23c7e08829264ddfb82702e6cac297f1063b46c48c01eafb16156c27a53aa23d1737c34f354ae1834c8498f5bd64b81b3c autoinstall.sh" | sha512sum -c - && sh ./autoinstall.sh
這些參數應添加到可執行文件,例如./nimwc cdata
--showconfig =顯示解析的INI配置和編譯選項。--newadmin =添加管理員用戶。--gitupdate =更新並強制重置。--initplugin =在TMP/內部創建插件骨架。--vacuumdb =真空數據庫並繼續(數據庫維護)。--backupdb =壓縮數據庫的完整備份。--backupdb-gpg =壓縮數據庫的完整備份。--newdb =用標準表生成數據庫(不會覆蓋或刪除表)。如果不存在數據庫,則newdb將初始化自動化。--insertdata =插入標準數據,例如--insertdata bulma (這將覆蓋現有數據)bulma =使用Bulma CSS,不需要JS(官方設計)[默認官方主題]bootstrap =使用bootstrap和jquerywater =水CSS框架,無JS,HTML無類(無需HTML類) 這些選項僅在Compiltime上可用:
-d:rc =重新編譯。 NIMWC正在使用發射器,因此需要強制重新編譯。-d:adminnotify =將錯誤日誌發送到指定的管理電子郵件。-d:dev =開發。-d:devemailon =在激活-d:dev時發送電子郵件。-d:demo =在公共測試網站NIM網站創建者上使用。此選項將使用標準數據每1小時覆蓋數據庫。-d:gitupdate =直接從git中更新並強制執行硬重置。-d:postgres =使用Postgres數據庫,而不是SQLITE。-d:packedjson =使用packedjson代替std lib json。性能優化。有3個主要用戶配置文件:
以下訪問權限適用於主計劃。插件可以具有自己的用戶權利定義。
“用戶”可以登錄並查看私人頁面和博客頁面。該用戶無法訪問添加或編輯任何內容。
“主持人”可以登錄並查看私人頁面和博客頁面。用戶可以添加和刪除用戶,但不能刪除或添加“ admin”用戶。用戶不能編輯JS,CSS和Core HTML - 僅在頁面和博客文章中。
“管理員”可以訪問任何東西。
您可以輕鬆添加和編輯博客頁面。博客頁面支持元數據:元描述和元關鍵字。也可以指定類別和標籤。
在“設置”菜單中,您可以指定應該如何分類博客文章,例如按照升級順序進行改裝日期。
要僅顯示具有特定名稱,標籤或類別的Blogpost,您必須將標準附加到URL。不可能將它們結合起來。
website.com/blog?name=nim
website.com/blog?category=article
website.com/blog?tags=code
有多個插件可用。您可以在程序中下載它們,網址為<webpage>/plugins/repo 。
插件存儲庫位於這裡:NIMWC插件存儲庫
編輯博客頁面或普通頁面時,請按CTRL+S保存。
Docker
流浪漢
NGNIX配置
Google recaptcha
要激活Google Recaptcha聲稱您網站和服務器密鑰,然後將它們插入config.cfg 。
Systemd
將文件nimwc.service複製到/lib/systemd/system/
sudo nano /lib/systemd/system/nimwc.service
啟用NIMWC的自動啟動:
sudo systemctl enable nimwc
sudo systemctl start nimwc
sudo systemctl status nimwc
CI構建
雜交,為舊Linux建造
有時,您可能需要從最近的Linux(例如New Arch或Ubuntu)中使用非常舊的Linux(例如Old Centos和Debian Old Stable)來構建,這是您無法做到的,而沒有帶有舊Linux構建的虛擬機。
可選的依賴性。
您可以選擇CPU和RAM NIMWC可以使用多少,Firejail會使Nimwc相信實際上可用的CPU&RAM較少。如果您選擇太小的資源來實現太大的負載,那麼當您嘗試在cpu&ram太小的虛擬箱上運行一個重型程序時,就會感覺到,但仍會運行,或者盡力嘗試運行。當您通過CPU和RAM使用的某些閾值時,這對於雲可能會很有用。
NIMWC不依賴任何要運行的硬件設備,例如音頻,視頻,USB,DVD等,因此您可以阻止對硬件PeripeHals的訪問,從而阻止其硬件驅動程序和可能具有脆弱性的庫,從而使您的NIMWC更加安全。
有可以阻止root用戶和Linux系統上其餘用戶的選項,這有助於保護您的NIMWC免受特權量表的影響,這就是當無特權的普通用戶成為超級用戶root時,或者用戶可以看到其他用戶的東西。
緩存和臨時目錄被安裝為私人臨時獨特的自動化TMPF,這意味著無法從NIMWC內更改真實的目錄。
noMnt=true是在每台服務器運行1個實例nimwc時, noMnt=false是在每個服務器運行多個實例時,因為它可能會同時阻止其他在/mnt/ mnt的實例。
noX=false如果您運行了無頭服務器或Chromebook。 noX=true使用Xvfb進行x隔離( xorg-server-xvfb ),如果您想使用它,則可能需要安裝它,但不是很難的依賴性,只需使用noX=false即可使用它,就不需要安裝它。
這些功能來自Linux內核本身,因此性能成本為零,即使您使用或不使用該技術,技術也已經存在。
因此,總之,NIMWC被編譯為二進製文件,不需要訪問您自己的大多數係統,僅僅是其自己的文件夾,與Firejails的集成隱藏了其他所有內容。
您本地版本的Firejail需要> = 0.9.58 。使用軟件包管理器安裝:
# Arch (package manager)
sudo pacman -S firejail
# Ubuntu (built files)
https://launchpad.net/ubuntu/+source/firejail/0.9.58-1 # <-- download
sudo apt install ./firejail_0.9.58-1_arm64.deb
# Compile
git clone https://github.com/netblue30/firejail.git
cd firejail
./configure && make && sudo make install-strip