如何从Docker上的Cypress容器访问另一个容器?

时间:2020-08-06 16:12:36

标签: docker cypress

我的docker-compose.yml文件中显示,我在同一默认网桥网络上有两个容器:

version: '3.2'
services:
  pa-portal:
    image: web_app_image
    container_name: pa_portal
    volumes:
      - productDB:/web_app/db
    ports:
      - "8080:8080"
  cypress:
    image: "cypress/included:4.4.0"
    depends_on:
      - pa-portal
    environment:
      - CYPRESS_baseUrl=http://pa-portal:8080
    working_dir: /cypress-testing

    volumes:
      - ./:/cypress-testing

volumes:
  productDB:

在命令行上运行docker-compose up会运行赛普拉斯测试,但是在运行任务以清除pa-portal中的数据库表的测试点,我得到了错误: SQLITE_CANTOPEN :无法打开数据库文件

我的任务如下:

module.exports = (on, config) => {

  on('task', {
    clearInvoices() {
      let db = new sqlite3.Database('pa-portal:8080/web_app/db/db.sqlite3', sqlite3.OPEN_READWRITE, (err) => {
        if (err) {
          console.error(err.message);
        }
        console.log('Connected to the database.');
      });


      db.run(`DELETE FROM table_name`, function (err) {
        if (err) {
          return console.error(err.message);
        }
        console.log(`Row(s) deleted ${this.changes}`);
      });

      return null
    }
  }) 

pa-portal:8080/web_app/db/db.sqlite3”是访问另一个容器中数据库的正确方法吗?

0 个答案:

没有答案