使用现有卷运行docker

使用现有卷运行docker,docker,docker-compose,odoo,Docker,Docker Compose,Odoo,需要一些帮助来恢复我的Odoo实例后图像更新。我想它现在可能已经不见了,但不知道我是否可以恢复它 升级我的Odoo实例时,我犯了以下错误: docker pull图像 docker停止实例 docker rm实例 docker compose up-d 现在,我才意识到,根据他们的Dockerhub页面,我不应该使用这种方法——这是我应该做的 $ docker run --volumes-from old-odoo -p 8070:8069 --name new-odoo --link db:d

需要一些帮助来恢复我的Odoo实例后图像更新。我想它现在可能已经不见了,但不知道我是否可以恢复它

升级我的Odoo实例时,我犯了以下错误:

  • docker pull图像
  • docker停止实例
  • docker rm实例
  • docker compose up-d
  • 现在,我才意识到,根据他们的Dockerhub页面,我不应该使用这种方法——这是我应该做的

    $ docker run --volumes-from old-odoo -p 8070:8069 --name new-odoo --link db:db -t odoo
    
    希望能够重新运行我的实例,我尝试了以下方法,但没有成功-感觉好像我没有正确安装旧卷

    docker run --mount source=85e806e42968fb5ee30556ecd559420fd2f745af85aab921d64664414304317a ,target=/_data --expose 8069 --expose 80 --expose 443 --name odoo_web_1 --network nginx-proxy --link odoo_db_1:db -t odoo
    
    我尝试访问网站时遇到错误503页..:( 我不确定是否应该使用--mount或--volume来访问以前装入的卷

    我确实使用docker compose,如果卷装载可以通过docker compose完成,那么效果最好

    或者,我应该启动一个新实例并将旧数据库迁移到新数据库吗

    docker compose.yml
    如下所示

    version: '2'
    services:
      web:
        image: odoo:latest
        depends_on:
          - db
        expose:
          - "80"
          - "443"
        environment:
          VIRTUAL_PORT: 8069
          VIRTUAL_HOST: sub.domain.com
          LETSENCRYPT_HOST: sub.domain.com
          LETSENCRYPT_EMAIL: admin@domain.com
        volumes:
          - ./openerp-server.conf:/etc/openerp-server.conf
          - ./addons:/mnt/extra-addons
      db:
        image: postgres:latest
        environment:
          - POSTGRES_DB=postgres
          - POSTGRES_PASSWORD=xxx
          - POSTGRES_USER=xxx
    
    networks:
      default:
        external:
          name: nginx-proxy
    
    

    您尚未装入数据卷(
    /var/lib/odoo
    ),因此您的数据文件已随实例一起删除。您装入的卷用于加载项和配置文件,并且新旧映像之间没有差异

    将此添加到docker compose中,以便下次使用:):


    您也可以装载到文件夹。

    您尚未显示
    docker compose.yml
    文件中的内容,但如果将其配置为使用命名卷,则在重新启动时,它将继续使用与所示相同的命名卷。upsss。。很抱歉,我将编辑并添加docker compose文件。卷未装载在docker compose上。我可以添加外部卷,我尝试过,但它似乎同时装载了卷和新卷=\你试过用旧卷运行旧版本吗?嗨@SergioSantiago,docker因为我的第3步而不见了,所以我想我不能在那里快速重新运行docker=\我的意思是,使用旧的图像版本运行一个新的容器。以确保数据未损坏。
    volumes:
          - ./openerp-server.conf:/etc/openerp-server.conf
          - ./addons:/mnt/extra-addons
          - odoo14:/var/lib/odoo