RHCA之路---EX280(8)

RHCA之路—EX280(8)

1. 题目

RHCA之路---EX280(8)_第1张图片
On master.lab.example.com using the template file in http://materials.example.com/exam280/gogs as a basis,
install an application in the ditto project according to the following requirements:
All of the registry entries must point to your local registry at registry.lab.example.com
The version in the ImageStream line for the postgresql image must be changed from postgresql:9.5 to postgresql:9.2
For the Gogs pod, use the Docker image from http://materials.example.com/exam280/gogs.tar and make sure it is tagged as registry.lab.example.com/openshiftdemos/gogs:0.9.97 and pushed to your local registry
Mask the template gogs available across all projects and for all users
Deploy the appllication using the template, setting the parameter HOSTNAME to gogs.apps.lab.example.com
Create a user salvo with password redhat and email address [email protected] on the application frontend
(use the Register link on the top right of the page at http://gogs.apps.lab.example.com) and, as this user, create a Git repository named ex280
If there isn’t one already, create a file named README.md in the repository ex280 and put the line faber est quisque fortunae suae in it and commit it.
The repository must be visible and accessible

2. 解题

2.1 切换项目

[root@master shrimp]# oc project ditto
Now using project "ditto" on server "https://master.lab.example.com".
[root@master shrimp]# mkdir ~/ditto
[root@master shrimp]# cd ~/ditto
[root@master ditto]# oc projects
You have access to the following projects and can switch between them with 'oc project ':

    default
  * ditto
    farm
    kube-public
    kube-service-catalog
    kube-system
    logging
    management-infra
    openshift
    openshift-ansible-service-broker
    openshift-infra
    openshift-node
    openshift-template-service-broker
    openshift-web-console
    rome
    samples
    shrimp

Using project "ditto" on server "https://master.lab.example.com".

2.2 创建模板

2.2.1 下载模板

[root@master ditto]# wget http://materials.example.com/exam280/gogs/gogs-temp.yaml
--2023-09-04 16:33:37--  http://materials.example.com/exam280/gogs/gogs-temp.yaml
Resolving materials.example.com (materials.example.com)... 172.25.254.254
Connecting to materials.example.com (materials.example.com)|172.25.254.254|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10037 (9.8K) [text/plain]
Saving to: ‘gogs-temp.yaml’

100%[===========================================================================================================>] 10,037      --.-K/s   in 0s

2023-09-04 16:33:37 (285 MB/s) - ‘gogs-temp.yaml’ saved [10037/10037]

2.2.3 替换yaml

[root@master ditto]# sed -ir 's/postgresql:9.5/postgresql:9.2/g' gogs-temp.yaml
[root@master ditto]# grep gogs: gogs-temp.yaml
        name: services.lab.example.com/openshiftdemos/gogs:0.9.97
[root@master ditto]# sed -ir 's#services.lab.example.com/openshiftdemos/gogs:0.9.97#registry.lab.example.com/openshiftdemos/gogs:0.9.97#g' gogs-temp.yaml

2.2.4 创建template

[root@master ditto]# oc create -f gogs-temp.yaml -n openshift
template "gogs" created

2.3 创建镜像

[root@master ditto]# wget http://materials.example.com/exam280/gogs.tar
--2023-09-04 16:38:12--  http://materials.example.com/exam280/gogs.tar
Resolving materials.example.com (materials.example.com)... 172.25.254.254
Connecting to materials.example.com (materials.example.com)|172.25.254.254|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 467157504 (446M) [application/x-tar]
Saving to: ‘gogs.tar’

100%[===========================================================================================================>] 467,157,504  106MB/s   in 4.7s

2023-09-04 16:38:17 (95.1 MB/s) - ‘gogs.tar’ saved [467157504/467157504]

[root@master ditto]# docker load -i gogs.tar
34e7b85d83e4: Loading layer [==================================================>] 199.9 MB/199.9 MB
addf85492fbe: Loading layer [==================================================>] 6.144 kB/6.144 kB
126a150d0743: Loading layer [==================================================>] 189.6 MB/189.6 MB
b93687778caa: Loading layer [==================================================>] 77.66 MB/77.66 MB
Loaded image: openshiftdemos/gogs:latest
[root@master ditto]# docker tag openshiftdemos/gogs:latest registry.lab.example.com/openshiftdemos/gogs:0.9.97
[root@master ditto]# docker push registry.lab.example.com/openshiftdemos/gogs:0.9.97
The push refers to a repository [registry.lab.example.com/openshiftdemos/gogs]
b93687778caa: Pushed
126a150d0743: Pushed
addf85492fbe: Pushed
34e7b85d83e4: Pushed
0.9.97: digest: sha256:483a06aac04eb028ae1ddbd294954ba28d7c16b32fc5fca495f37d8e6c9295de size: 1160

2.4 根据template创建app

[root@master ditto]# oc new-app --template=gogs --param=HOSTNAME=gogs.apps.lab.example.com
--> Deploying template "openshift/gogs" to project ditto

     gogs
     ---------
     The Gogs git server (https://gogs.io/)

     * With parameters:
        * APPLICATION_NAME=gogs
        * HOSTNAME=gogs.apps.lab.example.com
        * GOGS_VOLUME_CAPACITY=1Gi
        * DB_VOLUME_CAPACITY=2Gi
        * Database Username=gogs
        * Database Password=gogs
        * Database Name=gogs
        * Database Admin Password=605BtU1L # generated
        * Maximum Database Connections=100
        * Shared Buffer Amount=12MB
        * Gogs Version=0.9.97
        * Installation lock=true
        * Skip TLS verification on webhooks=false

--> Creating resources ...
    persistentvolume "gogs-postgres-data" created
    persistentvolume "gogs-data" created
    serviceaccount "gogs" created
    service "gogs-postgresql" created
    deploymentconfig "gogs-postgresql" created
    service "gogs" created
    route "gogs" created
    deploymentconfig "gogs" created
    imagestream "gogs" created
    persistentvolumeclaim "gogs-data" created
    persistentvolumeclaim "gogs-postgres-data" created
    configmap "gogs-config" created
--> Success
    Access your application via route 'gogs.apps.lab.example.com'
    Run 'oc status' to view your app.

2.5 创建git仓库

RHCA之路---EX280(8)_第2张图片
RHCA之路---EX280(8)_第3张图片
RHCA之路---EX280(8)_第4张图片
RHCA之路---EX280(8)_第5张图片
RHCA之路---EX280(8)_第6张图片
RHCA之路---EX280(8)_第7张图片

2.6 git clone

[root@master ditto]# git clone http://gogs.apps.lab.example.com/salvo/ex280.git
Cloning into 'ex280'...
warning: You appear to have cloned an empty repository.
[root@master ditto]# cd ex280/
[root@master ex280]# vim README.md
[root@master ex280]# cat README.md
faber est quisque fortunae suae
[root@master ex280]# git add .
[root@master ex280]# git commit -m 8
[master (root-commit) 5f37403] 8
 1 file changed, 1 insertion(+)
 create mode 100644 README.md
[root@master ex280]# git push
Counting objects: 3, done.
Writing objects: 100% (3/3), 229 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
Username for 'http://gogs.apps.lab.example.com': salvo
Password for 'http://[email protected]':redhat
To http://gogs.apps.lab.example.com/salvo/ex280.git
 * [new branch]      master -> master

3. 确认

刷新git仓库,可以看到README.md已经被提交
RHCA之路---EX280(8)_第8张图片

你可能感兴趣的:(Linux,rhca,RHCA,linux)