“Fadhbanna ollmhóra agam le mo VPS. Ag athshuiteáil OpenClaw don 3ú nó 4ú huair anois.”

Bhí an teachtaireacht sin le feiceáil ar OpenClaw Discord an mhí seo caite. Ní raibh an t-úsáideoir ina aonar. Má scrollálann tú trí chainéil an phobail, gheobhaidh tú na scórtha leaganacha den téama céanna: cliseann an uirlis brabhsálaithe, ní féidir leis an ngníomhaire Chromium a shroicheadh, ritheann an VPS as cuimhne, d’oibrigh gach rud inné agus anois ní oibríonn sé.

Má tá tú ag léamh seo toisc gur chuardaigh tú “OpenClaw brabhsálai ag teipeadh VPS” díreach anois, tá tú san áit cheart. Míníonn an postáil seo na cúig rud a bhriseann, cén fáth a n-idirghníomhaíonn siad ar bhealaí frustráideacha, agus conas a réitíomar iad ar fad san OpenClaw.rocks Kubernetes operator ionas nach mbeidh ort smaoineamh ar shocrú brabhsálaithe go deo arís.

An earráid a fheiceann gach duine

Is í an teachtaireacht earráide is coitianta i bpobal OpenClaw an ceann seo:

Can't reach the OpenClaw browser control service
(timed out after 15000ms)

Taispeánann sí ar Ubuntu, Debian, i Docker, ar Hetzner, Hostinger, GCP agus gach áit eile ina ndéanann daoine iarracht OpenClaw a rith le huathoibriú brabhsálaithe. Deir logaí an gheata “Browser control service ready.” Ach nuair a dhéanann an gníomhaire iarracht an brabhsálai a úsáid, tagann am istigh.

Tá an earráid ginearálta. Níl na cúiseanna. Tá ar a laghad cúig mhodh teipe ar leith ann, agus is ionann a gcuma ón taobh amuigh.

Teip 1: Snap Chromium agus balla AppArmor

Ar fhreastalaí úr Ubuntu 22.04+, filleann which chromium-browser /usr/bin/chromium-browser. Breathnaíonn sé sin ceart. Níl sé.

Ó Ubuntu 22.04 i leith, is pacáiste snap é an pacáiste réamhshocraithe Chromium. Nuair a dhéanann geata OpenClaw iarracht an dénártha sin a thosú trí sheirbhís systemd, cuireann sraith srianta AppArmor cosc air. Ní féidir leis an bpacáiste snap poirt dífhabhtaithe Chrome DevTools Protocol (CDP) a cheangal tríd an sandbox. Tosaíonn an dénártha, dealraíonn sé go dtosaíonn sé, ach ansin teipeann air go ciúin an port a theastaíonn ó OpenClaw a oscailt.

Feicfidh tú “Failed to start Chrome CDP on port 18800” sna logaí, nó uaireanta tada ar bith. Tosaíonn próiseas an bhrabhsálaithe agus faigheann sé bás sula scríobhann sé líne loga amháin fiú.

Is é an réiteach pacáiste .deb Google Chrome a shuiteáil nó dénártha neamhspleách Chromium ó Playwright in ~/.cache/ms-playwright/ a úsáid. Seachnaíonn an dá cheann sandbox snap. Ach níl an réiteach follasach. Scanann braitheoireacht brabhsálaithe OpenClaw cosáin chaighdeánacha in ord, aimsíonn sé an dénártha snap ar dtús, agus déanann iarracht é a úsáid. Tá cur síos iomlán ag GitHub issue #4978.

Teip 2: Réamhshocruithe headless a ghlacann le taispeáint

Seolann OpenClaw le headless: false agus noSandbox: false mar réamhshocruithe brabhsálaithe. Déanann sé seo ciall ar Mac nó ríomhaire Windows le taispeáint. Ar VPS, níl aon taispeáint ann. Gan cumraíocht sainráite, déanann Chromium iarracht fuinneog a oscailt ar fhreastalaí taispeána nach bhfuil ann.

Socraíonn dhá athrú cumraíochta é:

openclaw config set browser.headless true
openclaw config set browser.noSandbox true

Luann formhór na dtreoracha VPS é seo. Ach má leanann tú treoracha suiteála caighdeánacha OpenClaw, ní thaispeántar ceachtar líne. Suiteálann tú, triailann tú an brabhsálai, teipeann air. Cuardaíonn tú an earráid. Aimsíonn tú postáil bhlag. Cuireann tú an chumraíocht leis. Atosaíonn tú. Anois tá tú ag teip uimhir a trí.

Teip 3: An OOM kill nach féidir leat a fheiceáil

Ídíonn cluaisín Chromium amháin le cúpla leathanach oscailte 2 go 4 GB de RAM. Ar VPS 4 GB, fágann sé sin beagnach tada d’OpenClaw féin, don chóras oibriúcháin, agus d’aon seirbhísí eile atá á rith agat.

Nuair a ritheann Linux as cuimhne, maraíonn OOM killer an chroílár an próiseas is mó cuimhne. Sin Chromium. Faigheann an próiseas bás. Logálann OpenClaw am istigh brabhsálaithe. Níl aon tuairisc tuairte, aon rian cruachta, aon léiriú gur cuimhne ba chúis leis.

Tá leagan níos caolchúisí den fhadhb seo ann freisin. Sceithfidh Chromium próisis rindreálaí do gach cluaisín. Mura ndéantar iad a ghlanadh i gceart, carnaíonn siad. Dhoiciméadaigh GitHub issue amháin 39 próiseas rindreálaí dilleachtaí a d’ídigh 3.8 GB de RAM ar VPS a raibh go leor spáis aige dar leis.

Is féidir leat seiceáil tar éis an ama le dmesg | grep -i "oom\|killed\|chromium", ach ní smaoiníonn formhór na ndaoine ar bhreathnú ansin. Atosaíonn siad OpenClaw, oibríonn sé ar feadh cúpla nóiméad, agus ansin tarlaíonn sé arís.

Molann an leathanach oifigiúil maidir le riachtanais freastalaí 4 GB ar a laghad do shocrú bunúsach. Ach glacann an uimhir sin le gan aon uathoibriú brabhsálaithe. Leis an mbrabhsálai cumasaithe, is é 8 GB an t-íosluach réalaíoch. Ar Hetzner, sin an difríocht idir cpx22 ($5/mí) agus cpx42 ($17/mí).

Teip 4: Cuimhne roinnte Docker atá ar iarraidh

Má ritheann tú OpenClaw i Docker (coitianta d’imlonnuithe VPS), tá gaiste eile ann. Is é réamhshocrú /dev/shm Docker 64 MB. Úsáideann Chromium cuimhne roinnte le haghaidh cumarsáide idirphróisis. Nuair a ritheann sé amach, cliseann cluaisíní go ciúin nó rindreálann siad leathanaigh bhána.

Is líne amháin i do docker-compose.yml an réiteach:

shm_size: '2gb'

Nó é a fheistiú go sainráite:

volumes:
  - /dev/shm:/dev/shm

Níl sé seo doiciméadaithe i dtreoir shocraithe OpenClaw. Is iompar Docker-shonrach é a théann i bhfeidhm ar aon fheidhmchlár a úsáideann Chromium, ach mura ndearna tú imlonnú ar bhrabhsálaithe headless i Docker roimhe seo, ní bheadh a fhios agat é a chuardach.

Teip 5: Imbhuailtí poirt nár thug aon duine rabhadh duit fúthu

Ritheann seirbhís rialaithe brabhsálaithe OpenClaw ar phort ar leith ón ngeata. De réir réamhshocraithe, is é port an gheata móide 2. Má tá do gheata ar 18789, ba cheart go mbeadh seirbhís rialaithe an bhrabhsálaithe ar 18791, agus athsheachadadh an bhreiseáin ar 18792.

I Docker, mura nochtann tú ach port 18789, ní féidir seirbhís rialaithe an bhrabhsálaithe a shroicheadh ón taobh amuigh den choimeádán. Níos measa fós, logálann an geata “Browser control service ready” fiú nuair nach gceanglaíonn port 18791 go deo i ndáiríre. Lean Issue #17584 é seo ar ais go dtí an geata a d’iompórtáil an modúl mícheart: ceann a logálann an teachtaireacht “ready” gan an freastalaí HTTP a thosú. Insíonn an loga duit go bhfuil gach rud ceart go leor. Tá an port marbh.

I Kubernetes, má úsáideann coimeádán eile sa phod céanna port 9222 (an port caighdeánach CDP) cheana féin, braitheann feidhm ensurePortAvailable() OpenClaw an port mar atá in úsáid agus diúltaíonn sé ceangal, fiú má is é an t-áititheoir an Chromium céanna ar cheart d’OpenClaw a bheith ag caint leis.

Doiciméadaíonn GitHub issue #10994 cás inar oibrigh socrú VPS an úsáideora i gceart. Ansin, tar éis roinnt gníomhartha uathoibrithe, d’fhan an port CDP i bhfostú. Ba é an t-aon réiteach próisis Chromium ar strae a aimsiú agus a mharú a raibh an port acu.

Cén fáth a ndéanann na teipeanna seo comhcheangal

Tá réiteach aitheanta ag gach ceann de na cúig fhadhb seo. Ach idirghníomhaíonn siad. Réitíonn tú saincheist snap agus buaileann tú leis an réamhshocrú headless. Socraíonn tú an chumraíocht agus tosaíonn Chromium. Ritheann sé ar feadh deich nóiméad, ansin leagann an OOM killer é. Cuireann tú spás swap leis, agus anois cúisíonn teorainn cuimhne roinnte Docker teipeanna rindreála ciúine. Socraíonn tú é sin agus aimsíonn tú nach bhfuil port 18791 nochta.

Breathnaíonn an lúb dífhabhtaithe mar seo: cuardaigh earráid, aimsigh réiteach páirteach, cuir réiteach i bhfeidhm, buail le hearráid eile, déan arís. Chuir úsáideoir Discord amháin síos ar athshuiteáil a chóras oibriúcháin iomlán “don 3ú nó 4ú huair.” Thuairiscigh duine eile go raibh an brabhsálai “éagobhsaí” tar éis a raibh dar leis socrú iomlán. D’oscail tríú duine issue leis an teideal simplí “Browser tool consistently fails on VPS.”

Ní hé an fhadhb go bhfuil aon réiteach aonair deacair. Is é an fhadhb go bhfuil cúig cinn acu, go mbraitheann siad ar do chóras oibriúcháin sonrach, bainisteoir pacáistí, am rite coimeádáin, agus soláthraí VPS, agus ciallaíonn botún amháin sa slabhra nach n-oibríonn an brabhsálai.

Chun a gceart a thabhairt dóibh, tá foireann OpenClaw ag socrú fabhtanna gaolmhara go seasta. Tá an loga “ready” míthreorach, glanadh rindreálaithe dilleachtaí, agus láimhseáil poirt CDP ar fad feabhsaithe i leaganacha le déanaí. Ach déileálann na socruithe upstream le hairíonna laistigh de chód OpenClaw. Ní féidir leo an dénártha Chromium ceart a shuiteáil ar d’fhreastalaí, do chuimhne roinnte Docker a chumrú, nó go leor RAM a leithdháileadh d’uathoibriú brabhsálaithe. Fanann siad sin mar do fhreagracht.

Conas a bhris muid Chromium trí huaire (agus cad a d’fhoghlaim muid)

Ritheann muid gach gníomhaire OpenClaw.rocks ar Kubernetes lenár n-oibreoir foinse oscailte. Thóg an sidecar brabhsálaithe seachtainí orainn é a fháil ceart. Bhuail muid lenár leagan féin de gach fadhb a cuireadh síos thuas, móide roinnt nach dtaispeánann ach i gcomhthéacs eagrúcháin coimeádán.

Ba shimplí an smaoineamh: rith Chromium mar choimeádán ar leith in aice le OpenClaw, ceangailte trí CDP. Líne amháin san acmhainn shaincheaptha agus oibríonn an brabhsálai díreach.

spec:
  chromium:
    enabled: true

Seo mar a tháinig an líne amháin sin le chéile i ndáiríre.

Tuairteáil 1: Úsáideoir mícheart, córas comhad inléite amháin

Rith ár gcéad iarracht an coimeádán Chromium mar UID 1001 le córas comhad fréimhe inléite amháin. An cleachtas slándála is fearr. Briste go hiomlán freisin. Tá súil ag an íomhá browserless le UID 999 (blessuser), agus glaonna Node.js ar os.userInfo() ag tosú, a theipeann le ENOENT nuair nach bhfuil iontráil /etc/passwd ag an UID. Fiú tar éis an UID a shocrú, chuir an córas comhad inléite amháin cosc ar Chrome comhaid sealadacha a scríobh. Thuairteáil an sidecar ag gach tosú sula scríobh sé líne loga amháin fiú. Tá an scéal iomlán ag Issue #12.

Tuairteáil 2: Balla slándála WebSocket

Leis an gcoimeádán ag rith ar deireadh, bhí Chromium suas, d’fhreagair CDP ar phort 9222, ach dhiúltaigh OpenClaw é a úsáid. Bhí an geata ag ceangal le IP LAN an phod (riachtanach do ródú Kubernetes Service), agus chuir sraith slándála OpenClaw cosc ar cheangail ghlanghléasta ws:// le seoltaí nach loopback iad: “SECURITY ERROR: Gateway URL uses plaintext ws:// to a non-loopback address. Both credentials and chat data would be exposed to network interception.”

Seiceáil slándála dlisteanach. Ach i bpod Kubernetes, roinneann gach coimeádán ainmspás líonra. Ní fhágann trácht eatarthu an nód go deo. Ní fhéadfaimis seiceáil slándála OpenClaw a athrú, mar sin chuir muid sidecar nginx reverse proxy leis a éisteann ar gach comhéadan agus a chuireann ar aghaidh chuig an ngeata ar loopback. Fanann an geata slán. Fanann an tseirbhís inrochtana. Doiciméadaíonn Issue #135 an dífhabhtú.

Tuairteáil 3: Imbhualadh poirt 3000

Bhí Chromium ag rith. Bhí an geata seachfhreastalaithe. Ach fós ní cheangródh an brabhsálai. Úsáideann an íomhá browserless port 3000 de réir réamhshocraithe, a bhuail le seirbhís rialaithe brabhsálaithe inmheánach OpenClaw. Agus nuair a d’athraíomar go port 9222, bhraith ensurePortAvailable() OpenClaw é mar “in úsáid ag rud éigin eile” agus dhiúltaigh ceangal, toisc go i n-ainmspás líonra roinnte, breathnaíonn port an sidecar áitiúil.

Ba é an réiteach seoladh IP an phod (trí Kubernetes Downward API) a úsáid in ionad localhost don URL CDP. Insíonn seoladh neamh-loopback d’OpenClaw modh cianda/ceangail-amháin a úsáid: ceangail lena bhfuil ag rith cheana féin in ionad iarracht a dhéanamh a bhrabhsálai féin a sheoladh. Réitigh PR #183 é seo.

An toradh: cúig réiteach, curtha i bhfeidhm go huathoibríoch

Mhúin gach ceann de na tuairteálacha seo rud éigin dúinn. Códaíonn an t-oibreoir reatha iad ar fad:

Leithlisiú sidecar. Ritheann Chromium ina choimeádán féin. Gan snap. Gan Playwright. Gan bratacha headless. Láimhseálann an íomhá browserless é sin ar fad.

Acmhainní tiomnaithe. Faigheann an sidecar a theorainneacha CPU agus cuimhne féin (250m-1000m CPU, 512Mi-2Gi RAM de réir réamhshocraithe, inchumraithe). Má sháraíonn Chromium a theorainn chuimhne, ní atosaíonn Kubernetes ach coimeádán an bhrabhsálaithe. Leanann do ghníomhaire ag rith.

Cuimhne roinnte. Feisteoidh an t-oibreoir go huathoibríoch toirt 1 GB bunaithe ar chuimhne ag /dev/shm. Níl aon chumraíocht Docker shm_size ag teastáil.

Ródú poirt. Gníomhachtaíonn IP an phod don URL CDP an modh cianda. Ceanglaíonn OpenClaw leis an sidecar in ionad iarracht a dhéanamh an port a éileamh. Imíonn coinbhleacht ensurePortAvailable().

Brath frith-róbat ionsuite. Brathaíonn go leor suíomhanna gréasáin Chromium headless réamhshocraithe agus cuireann cosc ar uathoibriú. Tacaíonn an t-oibreoir le extraArgs ar an sidecar Chromium, ionas gur féidir leat bratacha mar --disable-blink-features=AutomationControlled agus gníomhairí úsáideora saincheaptha a chur ar aghaidh gan íomhá choimeádáin shaincheaptha a thógáil:

spec:
  chromium:
    enabled: true
    extraArgs:
      - "--disable-blink-features=AutomationControlled"
      - "--user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
      - "--window-size=1920,1080"

Slándáil gan chomhréiteach. Gach cumas Linux bainte, ardú pribhléide díchumasaithe, seccomp RuntimeDefault, UID 999 neamh-fhréimhe. Gan --no-sandbox mar root.

Cad a chiallaíonn sé seo duit

Má tá OpenClaw á rith agat ar VPS agus go n-oibríonn an brabhsálai, comhghairdeas. Tá cúig mhodh teipe ar leith sáraithe agat agus tá tú ar an taobh eile. Coinnigh do shocrú. Déan cúltaca de do chumraíocht.

Mura n-oibríonn an brabhsálai, nó má oibríonn sé go heatramhach, nó má tá tú tuirseach de bheith ag dífhabhtú Chromium ar VPS $5, smaoinigh ar cad is fiú d’am.

Ritheann OpenClaw.rocks gach gníomhaire ar Kubernetes leis an oibreoir a cuireadh síos thuas. Tá an sidecar brabhsálaithe réamhchumraithe. Tá an chuimhne leithdháilte. Tá na poirt ródaithe. Tá an tslándáil crua. Ní shuiteálann tú aon rud, ní chumraíonn tú aon rud, agus ní dhéanann tú dífhabhtú ar aon rud.

Faigheann do ghníomhaire brabhsálai a oibríonn. Gach uair. As an mbosca.

Na cúig réiteach, achoimrithe

Más mian leat fanacht le féin-óstáil, seo an seicliosta iomlán:

  1. Athchur snap Chromium le Google Chrome .deb nó dénártha neamhspleách Playwright
  2. Cumasaigh modh headless: openclaw config set browser.headless true agus browser.noSandbox true
  3. Leithdhéan 8 GB+ RAM nó cuir 4 GB swap le haghaidh uathoibriú brabhsálaithe
  4. Feistigh cuimhne roinnte i Docker: shm_size: '2gb'
  5. Nocht gach ceann de na trí phort: geata, rialú brabhsálaithe (geata + 2), agus athsheachadadh breiseáin (geata + 3)

Nó scipeáil an seicliosta. Faigh do chúntóir ar OpenClaw.rocks agus lig dúinn an bonneagar a láimhseáil.