簡體   English   中英

如何在 Docker 中安裝 ColdFusion 卷?

[英]How to mount ColdFusion volume in Docker?

這是我為 ColdFusion 2018 嘗試的 docker-compose 文件,

version: '3.3'
services:
cf18:
  environment:
    - acceptEULA=YES
    - password=admin
  volumes:
    - /opt/coldfusion/:/opt/coldfusion/
  ports:
    - 8500:8500
  image: adobecoldfusion/coldfusion2018:latest
  command: 'whoami'

它可以工作,但無法安裝卷,我有一個 docker 錯誤日志,如下所示,

/opt/startup/start-coldfusion.sh: 523: cd: can't cd to /opt/coldfusion/cfusion/bin/

我需要安裝它,因為當我執行 Docker “docker-compose down”和“docker-compose up”時,更改需要持續存在。

任何幫助將不勝感激。

我發現了 ColdFusion Docker 圖片的這個倉庫,由Charlie Arehart 維護

https://github.com/carehart/awesome-cf-compose

深入研究這個會顯示/app的掛載點位於 repo 的文件夾結構中。

# Project structure:

.
├── docker-compose.yml
├── app
    └── test.cfm
    └── dumpserver.cfm

# docker-compose.yml

services:
    coldfusion: 
        image: adobecoldfusion/coldfusion2021:latest
        ports:
        - "8500:8500"
        environment:
            - acceptEULA=YES
            - password=123
        volumes:
            - ./app:/app

您不應該將整個/opt/coldfusion文件夾安裝到您的主機系統。 僅掛載您想要保留的子文件夾(如日志等)。 下面是我的coldfusion-docker-starter repo( https://github.com/dskaggs/coldfusion-docker-starter )中的一個例子:

services:
  coldfusion:
    image: eaps-docker-coldfusion.bintray.io/cf/coldfusion:latest
    env_file: coldfusion.env
    ports:
    - 8500:8500
    - 5005:5005
    volumes:
    - ${PWD}/app:/app
    - ${PWD}/logs/:/opt/coldfusion/cfusion/logs/
    networks: 
      - web

networks:
  web:  

綁定掛載也不必局限於目錄。 您也可以將特定文件從主機掛載到容器中的文件。 例如,這是將 MySQL 驅動程序 JAR 文件掛載到容器中的一種方法,以便 ColdFusion 可以訪問它們(我不會在生產環境中這樣做,只是提供一個示例):

volumes:
      - ${PWD}/app:/app   
      - ${PWD}/data/:/data
      - ${PWD}/drivers/mysql-connector-java-8.0.21.jar:/opt/ColdFusion/cfusion/lib/mysql-connector-java-8.0.21.jar

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM