Я использую просто Docker и oc cluster up
, что очень похоже.Развернутый внутренний реестр имеет адрес в пространстве 172.30.0.0/16 (т. Е. Сеть службы по умолчанию).
$ oc login -u system:admin
$ oc get svc -n default | grep registry
docker-registry ClusterIP 172.30.1.1 <none> 5000/TCP 14m
Теперь этот IP-адрес службы является внутренним для кластера, но может бытьвыставлено на роутере:
$oc expose svc docker-registry -n default
$oc get route -n default | grep registry
docker-registry docker-registry-default.127.0.0.1.nip.io docker-registry 5000-tcp None
В моем примере маршрут был docker-registry-default.127.0.0.1.nip.io
С этим маршрутом вы можете войти под своей учетной записью разработчика и вашим токеном
$oc login -u developer
$docker login docker-registry-default.127.0.0.1.nip.io -p $(oc whoami -t) -u developer
Login Succeeded
Примечание: oc cluster up
является эфемерным по умолчанию;Документы могут предоставить инструкции о том, как сделать эту настройку постоянной.
Еще одно замечание: если вы хотите, чтобы OpenShift пытался использовать некоторые из его собственных сборщиков, вы можете просто запустить oc new-app . --name <appname>
из своего каталога исходного кода.
$ cat Dockerfile
FROM centos:latest
$ oc new-app . --name=app1
--> Found Docker image 49f7960 (5 days old) from Docker Hub for "centos:latest"
* An image stream will be created as "centos:latest" that will track the source image
* A Docker build using binary input will be created
* The resulting image will be pushed to image stream "app1:latest"
* A binary build was created, use 'start-build --from-dir' to trigger a new build
* This image will be deployed in deployment config "app1"
* The image does not expose any ports - if you want to load balance or send traffic to this component
you will need to create a service with 'expose dc/app1 --port=[port]' later
* WARNING: Image "centos:latest" runs as the 'root' user which may not be permitted by your cluster administrator
--> Creating resources ...
imagestream "centos" created
imagestream "app1" created
buildconfig "app1" created
deploymentconfig "app1" created
--> Success
Build scheduled, use 'oc logs -f bc/app1' to track its progress.
Run 'oc status' to view your app.