Téigh ar aghaidh chuig an bpríomhábhar
Leagan: 6.x

Docker

Chun an íomhá docker a tharraingt:

docker tarraingt verdaccio/verdaccio

Docker pull

Leaganacha Tagged

alt Tarraingtí Docker Comhaireamh

Ón leagan v2.x atá tú is féidir leat íomhánna duga a tharraingt trí tag, mar seo a leanas:

Le haghaidh leagan mór:

docker pull verdaccio/verdaccio:4

Le haghaidh leagan beag:

docker pull verdaccio/verdaccio:4.0

Le haghaidh leagan sonrach (paiste):

docker pull verdaccio/verdaccio:4.0.0

Má tá suim agat i liosta clibeanna, téigh le do thoil ar shuíomh Gréasáin an Docker Hub.

Rith Verdaccio ag baint úsáide as Docker

Chun an coimeádán docker a rith:

docker run -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio

Sainmhíníonn an argóint dheireanach cén íomhá is cóir a úsáid. Tarraingeoidh an líne thuas an íomhá réamhthógtha is déanaí ó dockerhub, mura bhfuil sé sin déanta agat cheana féin.

Má tá íomhá tógtha agat go háitiúil úsáid verdaccio mar an argóint dheireanach.

Is féidir leat -v a úsáid chun conf, stóráil agus breiseáin a cheangal le córas comhaid an óstaigh (mar shampla thíos).

Tabhair faoi deara má dhéanann tú conf mar seo a shuiteáil, go gcaithfidh tú cóip de config.yaml a sholáthar san eolaire sin ar dtús. Ní thosóidh an coimeádán Docker i gceart má tá an comhad seo in easnamh.

Is féidir leat an comhad seo a chóipeáil ar dtús ó https://github.com/verdaccio/verdaccio/blob/5.x/conf/docker.yaml.

Tabhair faoi deara, áfach, na rabhaidh slándála sa chomhad sin; beidh tú ag iarraidh cinnte a ghlasáil síos i dtáirgeadh.

V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio \
-p 4873:4873 \
-v $V_PATH/conf:/verdaccio/conf \
-v $V_PATH/storage:/verdaccio/storage \
-v $V_PATH/plugins:/verdaccio/plugins \
verdaccio/verdaccio

má tá tú ag rith i bhfreastalaí, b'fhéidir gur mhaith leat a chur leis -d chun é a rith sa chúlra

Nóta: Ritheann Verdaccio mar úsáideoir neamhfhréamh (uid=10001) laistigh den choimeádán, má úsáideann tú bind mount chun an réamhshocrú a shárú, ní mór duit a chinntiú go bhfuil an t-eolaire mount sannta don úsáideoir ceart. Sa sampla thuas, ní mór duit sudo chown -R 10001:65533 /path/for/verdaccio a rith ar shlí eile gheobhaidh tú earráidí cead ag am rite. Moltar Úsáid toirt docker seachas úsáid a bhaint as bind mount.

Athróga timpeallachta

Soláthraíonn Verdaccio sraith nua athróg timpeallachta chun ceadanna, port nó prótacal http a mhodhnú, féach orthu ag leathanach na n-athróg timpeallachta.

SELinux

Má chuirtear SELinux i bhfeidhm i do chóras, ní mór na heolairí atá le ceangal sa choimeádán a athlipéadú. Seachas sin beidh cosc ​​ar verdaccio na comhaid sin a léamh.

 fatal--- cannot open config file /verdaccio/conf/config.yaml: Error: CONFIG: it does not look like a valid config file

Mura bhfuil verdaccio in ann comhaid a léamh ar chomhadlann ceangailteach agus mura bhfuil tú cinnte, seiceáil le do thoil /var/log/audit/audit.log chun a dheimhniú gur saincheist SELinux é. Sa sampla seo, chruthaigh an earráid thuas an séanadh AVC seo a leanas.

type=AVC msg=audit(1606833420.789:9331): avc:  denied  { read } for  pid=1251782 comm="node" name="config.yaml" dev="dm-2" ino=8178250 scontext=system_u:system_r:container_t:s0:c32,c258 tcontext=unconfined_u:object_r:user_home_t:s0 tclass=file permissive=0

Is féidir le chcon lipéid na gcomhad agus na n-eolaire comhroinnte a athrú. Chun eolaire a dhéanamh inrochtana do choimeádáin, athraigh an cineál eolaire go container_file_t.

$ chcon -Rt container_file_t ./conf

Más mian leat an t-eolaire a chur ar fáil do choimeádán ar leith amháin, úsáid chcat chun catagóir SELinux atá ag teacht leis a shonrú.

Réiteach eile is ea bratacha z agus Z a úsáid. Chun an bhratach z a chur leis an mountpoint ./conf:/verdaccio/conf, ní gá ach é a athrú go ./conf:/verdaccio/conf:z. Déanann an bhratach z an t-eolaire a athlipéadú agus déanann gach coimeádán í a rochtain agus déanann na bratacha Z an t-eolaire a athshuíomh agus ní féidir rochtain a fháil ach ar an gcoimeádán sonrach sin. Tá sé contúirteach na bratacha seo a úsáid, áfach. Is féidir botún cumraíochta beag, cosúil le gléasadh /home/user/var a dhéanamh praiseach a dhéanamh de na lipéid ar na heolairí sin agus an córas a dhéanamh do-ghnóthaithe.

Breiseáin

Is féidir forlíontáin a shuiteáil in eolaire ar leith agus iad a shuiteáil ag baint úsáide as Docker nó Kubernetes, ach déan cinnte go dtógann tú forlíontáin le spleáchais dhúchasacha ag baint úsáide as an mbuníomhá céanna leis an Verdaccio Dockerfile.

Ag cruthú do Dockerfile féin ag úsáid verdaccio/verdaccio:tag mar bhun

Má tá an breiseán i gclár éigin cheana féin, d'fhéadfaí é a shuiteáil go domhanda leis an ordú npm.

FROM verdaccio/verdaccio:6
ADD docker.yaml /verdaccio/conf/config.yaml
USER root
RUN npm install --global verdaccio-static-token \
&& npm install --global verdaccio-auth-memory
USER $VERDACCIO_USER_UID

Le haghaidh sampla níos mionsonraithe den breiseán, seiceáil an fillteán le docker-samples .

Ag cur Dockerfile le forlíontáin áitiúla

Mura bhfuil na pacáistí ar fáil duit agus gur mhaith leat triail a bhaint as breiseán logánta, is féidir leat an fillteán /verdaccio/plugins a úsáid dó, féachfaidh verdaccio ag an bhfillteán seo le haghaidh breiseán ar am tosaithe.

  1. Cruthaigh buníomhá le tacaíocht ilchéime.
  2. ADD an breiseán logánta san íomhá
  3. Suiteáil spleáchais, atá riachtanach má tá spleáchais ag do bhreiseán, b'fhéidir go mbeadh ort iad a thógáil ar eagla go mbeadh céim tras-bhailithe uait (tsc, babel).
  4. An fillteán deiridh a chóipeáil isteach san íomhá deiridh agus ceadanna a chur i bhfeidhm ionas gur féidir le verdaccio na fillteáin a aimsiú (úsáideann verdaccio úsáideoir saincheaptha $VERDACCIO_USER_UID, léigh tuilleadh anseo).
FROM node:lts-alpine as builder
RUN mkdir -p /verdaccio/plugins
ADD plugins/verdaccio-docker-memory /verdaccio/plugins/verdaccio-docker-memory
RUN cd /verdaccio/plugins/verdaccio-docker-memory \
&& npm install --production
FROM verdaccio/verdaccio:6
ADD docker.yaml /verdaccio/conf/config.yaml
COPY --chown=$VERDACCIO_USER_UID:root --from=builder \
/verdaccio/plugins/verdaccio-docker-memory \
/verdaccio/plugins/verdaccio-docker-memory

Le haghaidh sampla níos mionsonraithe den breiseán, seiceáil an fillteán le docker-samples .

Breiseáin a chur leis gan íomhá nua a chruthú

  1. Ag úsáid docker-compose.yaml mar shampla thíos.
  2. Ag mapáil toirteanna sa docker, lorgóidh verdaccio forlíontáin ag /verdaccio/plugins de réir réamhshocraithe.
V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio \
-p 4873:4873 \
-v $V_PATH/conf:/verdaccio/conf \
-v $V_PATH/storage:/verdaccio/storage \
-v $V_PATH/plugins:/verdaccio/plugins \
verdaccio/verdaccio

Docker agus cumraíocht calafoirt saincheaptha

Déantar neamhaird ar aon host:port atá cumraithe i conf/config/config.yaml faoi listen ** agus an doicéir in úsáid faoi láthair **.

Más mian leat sampla docker Verdaccio a bhaint amach faoi phort difriúil, abair 5000 cuir an athróg timpeallachta VERDACCIO_PORT=5000 i d'ordú rith dugaire agus ansin nochtaigh an port -p 5000:5000.

V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio \
-e "VERDACCIO_PORT=8080" -p 8080:8080 \
verdaccio/verdaccio

Ar ndóigh ní mór na huimhreacha a thugann tú don pharaiméadar -p a mheaitseáil.

Ag baint úsáide as HTTPS le Docker

Is féidir leat an prótacal a mbeidh verdaccio ag éisteacht air a chumrú, mar an gcéanna le cumraíocht an phoirt. Caithfidh tú luach réamhshocraithe ("http") na hathróige timpeallachta PROTOCOL a fhorscríobh go "https", tar éis duit na deimhnithe sa config.yaml a shonrú.

docker run -it --rm --name verdaccio \
--env "VERDACCIO_PROTOCOL=https" -p 4873:4873
verdaccio/verdaccio

Ag baint úsáide as docker-compose

  1. Faigh an leagan is déanaí de docker-compose.
  2. Tóg agus rith an coimeádán:
$ docker-compose up --build

Is féidir leat an port a úsáid (do choimeádán agus d’óstach araon) trí VERDACCIO_PORT=5000 a réamhshocrú leis an ordú thuas.

version: '3.1'

services:
verdaccio:
image: verdaccio/verdaccio
container_name: 'verdaccio'
networks:
- node-network
environment:
- VERDACCIO_PORT=4873
ports:
- '4873:4873'
volumes:
- './storage:/verdaccio/storage'
- './config:/verdaccio/conf'
- './plugins:/verdaccio/plugins'
networks:
node-network:
driver: bridge

Ginfidh Docker imleabhar ainmnithe ina stórálfar sonraí feidhmchláir marthanacha. Is féidir leat ducker inspectdocker volume inspect a úsáid chun suíomh fisiceach na toirte a thaispeáint agus an chumraíocht a chur in eagar, mar shampla:

$ docker volume inspect verdaccio_verdaccio
[
{
"Name": "verdaccio_verdaccio",
"Driver": "local",
"Mountpoint": "/var/lib/docker/volumes/verdaccio_verdaccio/_data",
"Labels": null,
"Scope": "local"
}
]

Tóg do íomhá Docker féin

Téigh go dtí an brainse 5.x agus rith:

docker build -t verdaccio .

Tá script snáth ann freisin chun íomhá an docker a thógáil, ionas gur féidir leat a dhéanamh freisin:

yarn run build:docker

Tabhair faoi deara: Tógann an chéad leagan roinnt nóiméad le tógáil mar ní mór dó snáth a shuiteáil a rith, agus tógfaidh sé sin i bhfad arís aon uair a athraíonn tú aon chomhad nach bhfuil liostaithe i .dockerignore.

Tabhair faoi deara, le do thoil, le haghaidh aon cheann de na horduithe duga thuas ní mór duit docker a bheith suiteáilte ar do ríomhaire agus ba chóir go mbeadh an inrite duga ar fáil ar do $PATH.

Samplaí Docker

Tá stór ar leith ann ina bhfuil cumraíochtaí iolracha chun íomhánna Docker a chumadh le verdaccio, mar shampla, mar seachfhreastalaí droim ar ais:

https://github.com/verdaccio/docker-examples

Tógáil Chustaim Docker

Má tá íomhá déanta agat bunaithe ar Verdaccio, ná bíodh drogall ort é a chur leis an liosta seo.