Dvě věci, které se u community-scripts čekají a chyběly.
update v kontejneru
Aktualizace je nově jedno slovo:
update
Sám si přitom obnoví i instalátor z větve main, aby nejel napořád na té verzi skriptu, se kterou se instalovalo. Cesta z uzlu (CTID=123 MODE=update) zůstává beze změny — obojí dělá totéž.
Stejnou úvahu mají community-scripts v install.func, jen tam /usr/bin/update volá jejich ct/<app>.sh. U nás míří rovnou na instalátor, protože ten je idempotentní a žádnou mezivrstvu nepotřebuje.
Konzole bez hesla
Kontejner schválně nemá root heslo — jenže pak se do konzole ve webu Proxmoxu nedalo dostat. Uživatel žádné přihlašovací údaje nezná a ani nemá odkud.
Řeší to autologin přes container-getty@1, přesně jak to dělají community-scripts:
Nová práva to nikomu nedává. Kdo se dostane do webu Proxmoxu, má root na uzlu, a tím pádem i v každém kontejneru. Komu se to přesto nezdá, vypne to AUTOLOGIN=0 a leze dovnitř přes pct enter.
Ověřeno
Projeto v debian:13 se zástupným systemctl, proti skutečnému releasu:
instalace nainstaluje v1.2.0, zapíše /usr/bin/update i override konzole
v obou vygenerovaných souborech sedí rozvinutí proměnných ($GITEA, $HOME_DIR rozvinuté, $NOVY a $TERM ponechané)
update skutečně spuštěn: stáhl si instalátor z main, proběhl celý a appka po něm odpovídá 200
Ten test mimochodem hezky ukázal, že obnova instalátoru funguje — stáhl si ze main tu dosavadní 117řádkovou verzi místo zdejší 164řádkové. Po zmergování tohohle PR bude tahat tuhle.
Neověřeno: autologin pod skutečným systemd. container-getty@1 v Dockeru neexistuje, takže jsem ověřil jen to, že se override zapíše správně. Na živém kontejneru to je jedno kliknutí do konzole.
Dvě věci, které se u community-scripts čekají a chyběly.
## `update` v kontejneru
Aktualizace je nově jedno slovo:
```bash
update
```
Sám si přitom obnoví i instalátor z větve `main`, aby nejel napořád na té verzi skriptu, se kterou se instalovalo. Cesta z uzlu (`CTID=123 MODE=update`) zůstává beze změny — obojí dělá totéž.
Stejnou úvahu mají community-scripts v `install.func`, jen tam `/usr/bin/update` volá jejich `ct/<app>.sh`. U nás míří rovnou na instalátor, protože ten je idempotentní a žádnou mezivrstvu nepotřebuje.
## Konzole bez hesla
Kontejner schválně nemá root heslo — jenže pak se do konzole ve webu Proxmoxu nedalo dostat. Uživatel žádné přihlašovací údaje nezná a ani nemá odkud.
Řeší to autologin přes `container-getty@1`, přesně jak to dělají community-scripts:
```
ExecStart=-/sbin/agetty --autologin root --noclear --keep-baud tty%I 115200,38400,9600 $TERM
```
**Nová práva to nikomu nedává.** Kdo se dostane do webu Proxmoxu, má root na uzlu, a tím pádem i v každém kontejneru. Komu se to přesto nezdá, vypne to `AUTOLOGIN=0` a leze dovnitř přes `pct enter`.
---
## Ověřeno
Projeto v `debian:13` se zástupným `systemctl`, proti skutečnému releasu:
- instalace nainstaluje v1.2.0, zapíše `/usr/bin/update` i override konzole
- v obou vygenerovaných souborech sedí rozvinutí proměnných (`$GITEA`, `$HOME_DIR` rozvinuté, `$NOVY` a `$TERM` ponechané)
- **`update` skutečně spuštěn**: stáhl si instalátor z `main`, proběhl celý a appka po něm odpovídá `200`
Ten test mimochodem hezky ukázal, že obnova instalátoru funguje — stáhl si ze `main` tu dosavadní 117řádkovou verzi místo zdejší 164řádkové. Po zmergování tohohle PR bude tahat tuhle.
**Neověřeno:** autologin pod skutečným systemd. `container-getty@1` v Dockeru neexistuje, takže jsem ověřil jen to, že se override zapíše správně. Na živém kontejneru to je jedno kliknutí do konzole.
Dvě věci, které se u community-scripts čekají a chyběly.
V kontejneru je nově /usr/bin/update, takže aktualizace je jedno slovo. Sám
si přitom obnoví i instalátor z main, aby nejel napořád na té verzi skriptu,
se kterou se instalovalo. Cesta z uzlu (MODE=update) zůstává.
A konzole: kontejner schválně nemá root heslo, jenže pak se do konzole ve
webu Proxmoxu nedalo dostat — uživatel žádné přihlašovací údaje nezná a ani
nemá odkud. Autologin přes container-getty@1 to řeší přesně tak, jak to
dělají community-scripts. Nová práva to nikomu nedává, kdo má web Proxmoxu,
má root na uzlu tak jako tak. Vypíná se AUTOLOGIN=0.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Dvě věci, které se u community-scripts čekají a chyběly.
updatev kontejneruAktualizace je nově jedno slovo:
Sám si přitom obnoví i instalátor z větve
main, aby nejel napořád na té verzi skriptu, se kterou se instalovalo. Cesta z uzlu (CTID=123 MODE=update) zůstává beze změny — obojí dělá totéž.Stejnou úvahu mají community-scripts v
install.func, jen tam/usr/bin/updatevolá jejichct/<app>.sh. U nás míří rovnou na instalátor, protože ten je idempotentní a žádnou mezivrstvu nepotřebuje.Konzole bez hesla
Kontejner schválně nemá root heslo — jenže pak se do konzole ve webu Proxmoxu nedalo dostat. Uživatel žádné přihlašovací údaje nezná a ani nemá odkud.
Řeší to autologin přes
container-getty@1, přesně jak to dělají community-scripts:Nová práva to nikomu nedává. Kdo se dostane do webu Proxmoxu, má root na uzlu, a tím pádem i v každém kontejneru. Komu se to přesto nezdá, vypne to
AUTOLOGIN=0a leze dovnitř přespct enter.Ověřeno
Projeto v
debian:13se zástupnýmsystemctl, proti skutečnému releasu:/usr/bin/updatei override konzole$GITEA,$HOME_DIRrozvinuté,$NOVYa$TERMponechané)updateskutečně spuštěn: stáhl si instalátor zmain, proběhl celý a appka po něm odpovídá200Ten test mimochodem hezky ukázal, že obnova instalátoru funguje — stáhl si ze
maintu dosavadní 117řádkovou verzi místo zdejší 164řádkové. Po zmergování tohohle PR bude tahat tuhle.Neověřeno: autologin pod skutečným systemd.
container-getty@1v Dockeru neexistuje, takže jsem ověřil jen to, že se override zapíše správně. Na živém kontejneru to je jedno kliknutí do konzole.