KCloud-Platform-IoT KCloud-Platform-IoT
首页
  • 活动

    • KCloud-Platform-IoT 开源三周年快乐&父亲节快乐
  • 更新日志

    • 4.0.1版本更新日志【总览】
    • 4.0.2版本更新日志
    • 4.0.3版本更新日志
    • 4.0.4版本更新日志
    • 4.0.5版本更新日志
  • 指南

    • 后端项目启动【单体】
    • 前端项目启动【单体】
    • 后端项目启动【微服务】
    • 前端项目启动【微服务】
    • Docker安装
    • Linux常用命令
    • Docker常用命令
    • JVM性能优化
    • 项目配置
    • COLA代码规范
    • OAuth2.1授权服务器配置
    • OAuth2.1资源服务器配置
    • OAuth2.1认证API配置
    • Nacos配置
    • 网关路由配置
    • 项目常用注解
    • Elasticsearch注解
    • Spring Cloud Alibaba配置
    • Spring Cloud Gateway配置
    • gRPC配置
    • ID生成器
    • Flyway配置
  • 环境

    • Ubuntu22.04安装Mysql9.6.0
    • ARM64疑难杂症
    • FRP内网穿透
    • Docker安装RabbitMQ
    • Docker安装Oracle
  • 物联网

    • PLC数采实施
赞助
GitHub (opens new window)
首页
  • 活动

    • KCloud-Platform-IoT 开源三周年快乐&父亲节快乐
  • 更新日志

    • 4.0.1版本更新日志【总览】
    • 4.0.2版本更新日志
    • 4.0.3版本更新日志
    • 4.0.4版本更新日志
    • 4.0.5版本更新日志
  • 指南

    • 后端项目启动【单体】
    • 前端项目启动【单体】
    • 后端项目启动【微服务】
    • 前端项目启动【微服务】
    • Docker安装
    • Linux常用命令
    • Docker常用命令
    • JVM性能优化
    • 项目配置
    • COLA代码规范
    • OAuth2.1授权服务器配置
    • OAuth2.1资源服务器配置
    • OAuth2.1认证API配置
    • Nacos配置
    • 网关路由配置
    • 项目常用注解
    • Elasticsearch注解
    • Spring Cloud Alibaba配置
    • Spring Cloud Gateway配置
    • gRPC配置
    • ID生成器
    • Flyway配置
  • 环境

    • Ubuntu22.04安装Mysql9.6.0
    • ARM64疑难杂症
    • FRP内网穿透
    • Docker安装RabbitMQ
    • Docker安装Oracle
  • 物联网

    • PLC数采实施
赞助
GitHub (opens new window)
  • 活动

    • KCloud-Platform-IoT 开源三周年快乐&父亲节快乐
  • 更新日志

    • 4.0.1版本更新日志【总览】
    • 4.0.2版本更新日志
    • 4.0.3版本更新日志
    • 4.0.4版本更新日志
    • 4.0.5版本更新日志
  • 指南

    • 后端项目启动【单体】
    • 前端项目启动【单体】
    • 后端项目启动【微服务】
    • 前端项目启动【微服务】
    • Docker安装
    • Linux常用命令
    • Docker常用命令
    • JVM性能优化
    • 项目配置
    • COLA代码规范
    • OAuth2.1授权服务器配置
    • OAuth2.1资源服务器配置
    • OAuth2.1认证API配置
    • Nacos配置
    • 网关路由配置
    • 项目常用注解
    • Elasticsearch注解
    • Spring Cloud Alibaba配置
    • Spring Cloud Gateway配置
    • gRPC配置
    • ID生成器
    • Flyway配置
  • 环境

    • Ubuntu22.04安装Mysql9.6.0
    • ARM64疑难杂症
    • FRP内网穿透
    • Docker安装RabbitMQ
    • Docker安装Oracle
    • 物联网

      • PLC数采实施
    • 二开指南
    • 环境
    KCloud-Platform-IoT
    2026-10-28
    目录

    Docker安装Oracle

    你好呀,我的老朋友!我是老寇,欢迎来到老寇IoT云平台!

    # 推送镜像

    众所周知,Docker拉取Oracle非常慢,所以,我们可以通过Github Action把 Docker官方 Oracle 镜像推送到阿里云镜像仓库

    name: Pull and Publish
    
    on:
      push:
        branches: [ "main" ]
      pull_request:
        branches: [ "main" ]
    
    jobs:
      verify:
        runs-on: ubuntu-latest
    
        steps:
          - name: Check out source
            uses: actions/checkout@v4
    
      docker:
        name: Pull Oracle and push to Aliyun
        runs-on: ubuntu-latest
    
        env:
          # Oracle 原始镜像
          ORACLE_IMAGE: container-registry.oracle.com/database/free:latest
    
          # 阿里云镜像仓库
          ALIYUN_REGISTRY: registry.cn-shenzhen.aliyuncs.com
          ALIYUN_NAMESPACE: xxx
          ALIYUN_REPOSITORY: oracle
    
        steps:
          - name: Check out source
            uses: actions/checkout@v4
    
          - name: Set up Docker Buildx
            uses: docker/setup-buildx-action@v3
    
          # 登录 Docker Hub 镜像仓库
          - name: Log in to Docker Hub
            uses: docker/login-action@v3
            with:
              username: ${{ secrets.DOCKERHUB_USERNAME }}
              password: ${{ secrets.DOCKERHUB_PASSWORD }}
    
          # 登录阿里云镜像仓库
          - name: Log in to Aliyun Container Registry
            uses: docker/login-action@v3
            with:
              registry: ${{ env.ALIYUN_REGISTRY }}
              username: ${{ secrets.DOCKERHUB_USERNAME }}
              password: ${{ secrets.DOCKERHUB_PASSWORD }}
    
          # 拉取 Oracle 镜像
          - name: Pull Oracle image
            run: |
              docker pull $ORACLE_IMAGE
    
          # 重新打阿里云 Tag
          - name: Tag Oracle image
            run: |
              docker tag \
                $ORACLE_IMAGE \
                $ALIYUN_REGISTRY/$ALIYUN_NAMESPACE/$ALIYUN_REPOSITORY:latest
    
          # 推送到阿里云
          - name: Push Oracle image to Aliyun
            run: |
              docker push \
                $ALIYUN_REGISTRY/$ALIYUN_NAMESPACE/$ALIYUN_REPOSITORY:latest
    

    # 运行容器

    services:
      oracle:
        image: registry.cn-shenzhen.aliyuncs.com/xxx/oracle:latest
        container_name: oracle
        restart: unless-stopped
        ports:
          - "1521:1521"
        environment:
          ORACLE_PWD: "Oracle123456"
          ORACLE_CHARACTERSET: "AL32UTF8"
        shm_size: "1g"
        volumes:
          - ./oracle:/opt/oracle/oradata
        networks:
          - iot_network
    networks:
      iot_network:
        driver: bridge
    

    注意:需要使用oracle用户权限创建文件夹

    id oracle
    sudo mkdir -p /home/a/app/oracle
    sudo chown 54321:54321 /home/a/app/oracle
    sudo chmod 750 /home/a/app/oracle
    
    # 启动容器
    docker compose up -d oracle
    # 需要等待10分钟才能完成初始化
    docker logs oracle
    

    我是老寇,我们下次再见啦!

    上次更新: 10/28/2026, 3:29:06 PM
    Docker安装RabbitMQ
    PLC数采实施

    ← Docker安装RabbitMQ PLC数采实施→

    Theme by Vdoing | Copyright © 2022-2026 laokou | Apache 2.0 License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式