目录
当前位置: 首页 > 文档资料 > 技术文档 Cookbook >

S2I

优质
小牛编辑
136浏览
2023-12-01

S2I

1 - 创建工程

$ oc new-project test

2 - 创建应用

$ oc new-app php:7.0~http://git.example.com/open-source/php-helloworld.git --name=php-helloworld
--> Found image 49a4513 (4 weeks old) in image stream "openshift/php" under tag "7.0" for "php:7.0"

    Apache 2.4 with PHP 7.0
    -----------------------
    PHP 7.0 available as container is a base platform for building and running various PHP 7.0 applications and frameworks. PHP is an HTML-embedded scripting language. PHP attempts to make it easy for developers to write dynamically generated web pages. PHP also offers built-in database integration for several commercial and non-commercial database management systems, so writing a database-enabled webpage with PHP is fairly simple. The most common use of PHP coding is probably as a replacement for CGI scripts.

    Tags: builder, php, php70, rh-php70

    * A source build using source code from http://git.example.com/open-source/php-helloworld.git will be created
      * The resulting image will be pushed to image stream "php-helloworld:latest"
      * Use 'start-build' to trigger a new build
    * This image will be deployed in deployment config "php-helloworld"
    * Ports 8080/tcp, 8443/tcp will be load balanced by service "php-helloworld"
      * Other containers can access this service through the hostname "php-helloworld"

--> Creating resources ...
    imagestream "php-helloworld" created
    buildconfig "php-helloworld" created
    deploymentconfig "php-helloworld" created
    service "php-helloworld" created
--> Success
    Build scheduled, use 'oc logs -f bc/php-helloworld' to track its progress.
    Application is not exposed. You can expose services to the outside world by executing one or more of the commands below:
     'oc expose svc/php-helloworld'
    Run 'oc status' to view your app.

3 - 创建路由

$ oc expose svc/php-helloworld
route "php-helloworld" exposed

4 - 查看所有

$ oc get all
NAME                               REVISION   DESIRED   CURRENT   TRIGGERED BY
deploymentconfigs/php-helloworld   1          1         1         config,image(php-helloworld:latest)

NAME                          TYPE      FROM      LATEST
buildconfigs/php-helloworld   Source    Git       1

NAME                      TYPE      FROM          STATUS     STARTED         DURATION
builds/php-helloworld-1   Source    Git@e898342   Complete   7 minutes ago   6m59s

NAME                          DOCKER REPO                                            TAGS      UPDATED
imagestreams/php-helloworld   docker-registry.default.svc:5000/test/php-helloworld   latest    23 seconds ago

NAME                    HOST/PORT                              PATH      SERVICES         PORT       TERMINATION   WILDCARD
routes/php-helloworld   php-helloworld-test.apps.example.com             php-helloworld   8080-tcp                 None

NAME                         READY     STATUS              RESTARTS   AGE
po/php-helloworld-1-build    0/1       Completed           0          7m
po/php-helloworld-1-deploy   1/1       Running             0          23s
po/php-helloworld-1-tr2zl    0/1       ContainerCreating   0          19s

NAME                  DESIRED   CURRENT   READY     AGE
rc/php-helloworld-1   1         1         0         23s

NAME                 TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)             AGE
svc/php-helloworld   ClusterIP   172.30.184.89   <none>        8080/TCP,8443/TCP   7m

5 - 查看构建日志

$ oc logs po/php-helloworld-1-deploy
--> Scaling php-helloworld-1 to 1
[kylin@ksoong intel]$ oc logs po/php-helloworld-1-build
---> Installing application source...
=> sourcing 20-copy-config.sh ...
---> 04:35:12     Processing additional arbitrary httpd configuration provided by s2i ...
=> sourcing 00-documentroot.conf ...
=> sourcing 50-mpm-tuning.conf ...
=> sourcing 40-ssl-certs.sh ...

Pushing image docker-registry.default.svc:5000/test/php-helloworld:latest ...
Pushed 2/6 layers, 36% complete
Pushed 3/6 layers, 77% complete
Pushed 4/6 layers, 83% complete
Pushed 5/6 layers, 83% complete
Pushed 6/6 layers, 100% complete
Push successful

6 - 服务测试

$ curl http://php-helloworld-test.apps.example.com/
Hello, World! php version is 7.0.27

最后更新:

类似资料

  • 认证(Authentication) 身份验证是大多数现有应用程序的重要组成部分。有许多不同的方法、策略和方法来处理用户授权。我们最终决定使用什幺取决于特定的应用程序要求,并且与它们的需求密切相关。 passport 是目前最流行的 node.js 认证库,为社区所熟知,并相继应用于许多生产应用中。将此工具与 Nest 框架集成起来非常简单。为了演示,我们将设置 passport-http-bea

  • 下面是一个 XML 技术的列表。 XHTML (可扩展 HTML) 更严格更纯净的基于 XML 的 HTML 版本。 XML DOM (XML 文档对象模型) 访问和操作 XML 的标准文档模型。 XSL (可扩展样式表语言) XSL 包含三个部分: XSLT (XSL 转换) - 把 XML 转换为其他格式,比如 HTML XSL-FO (XSL 格式化对象)- 用于格式化 XML 文档的语言

  • AJAX不能独立工作。 它与其他技术结合使用来创建交互式网页。 JavaScript 松散类型的脚本语言。 在页面中发生事件时调用JavaScript函数。 整个AJAX操作的胶水。 DOM 用于访问和操作结构化文档的API。 表示XML和HTML文档的结构。 CSS 允许将演示样式与内容明确分开,并可通过JavaScript以编程方式进行更改 XMLHttpRequest 与服务器执行异步交互的

  • 可能因为是线下面,再加上公司内部信息流通比较快,一天内的上下午就面完了! 我个人还是对公司的业务非常感兴趣的!所以提前看过好几篇公司业务相关的文章 面试官人很nice,我俩基本上是我一答他一回应,所以我在这里重点挑自己印象里答得不好的地方写写。 技术面 堆和栈的区别?堆是怎么样的数据结构? 数组和链表的具体区别呢?优缺点?存取效率? 原型链?可以先答概念,在用Object和Array来解释各个指向

  • 用例是黑盒测试的功能测试,用于根据系统的使用从系统的开始到结束识别测试用例。通过使用这种技术,测试团队创建了一个测试场景,可以从头到尾根据每个功能的功能运行整个软件。 在这种情况下,有一个测试人员代表用户逐个使用系统的功能。在这种情况下,有一个演员代表用户使用软件系统的功能。 这描述了软件应用程序的逐步功能,可以通过一个例子来理解,假设存在在线资金转移的软件应用程序。转账的各个步骤如下: 用户登录

  • 主要内容:动态分区的缺点,需要分页动态分区的缺点 动态分区的主要缺点是外部碎片。 尽管这可以通过压缩来消除,但正如我们前面所讨论的那样,压缩使得系统效率低下。 我们需要找一种替代机制,以更优化的方式加载分区中的进程。 让我们讨论一个称为分页的动态灵活机制。 需要分页 让我们考虑一个大小为2 MB的进程P1和分为三个分区的主内存。 在三个分区中,两个分区是每个大小为1 MB的空洞。 P1需要在主存中加载2 MB空间。 我们有两个1M