1

根据Zeit 文档

在文件系统方面,Docker 部署没有任何限制。它始终是可写和可读的。

事实上,我的小测试似乎成功地写入了文件:

app.get('/write', (req, res) => {
  console.log({
    __dirname,
    cwd: process.cwd()
  })
  const text = `some bit of text`
  const dirpath = path.resolve(process.cwd(), 'uploads')
  const fullpath = path.resolve(dirpath, `file-${+new Date()}.txt`)
  mkdirp(dirpath, function(error) {
    if (error) {
      console.error(error)
    } else {
      fs.writeFile(fullpath, text, error => {
        if (error) {
          console.error('error writing', error)
        } else {
          console.log(`file written at ${fullpath}`)
          fs.readdir(dirpath, function(err, items) {
            for (var i = 0; i < items.length; i++) {
              console.log(items[i])
            }
          })
          res.send('File written')
        }
      })
    }
  })
})

多次刷新/write路由后,这将打印文件列表。但是在 Zeit 的“源”面板中,我只看到我的 Dockerfile 复制的文件:

源输出

作为参考,我的Dockerfile

FROM node:carbon

WORKDIR /usr/src/app

COPY package*.json ./

RUN npm install

COPY . .

EXPOSE 3000

CMD [ "npm", "start" ]
#      ^^^^^^^^^^^^ "start": "node ./build/server"

在 Zeit/Now 环境中,是否有任何方法可以通过 ssh 或其他方法查看/与这些文件交互?

4

1 回答 1

1

没有。那是因为您无法访问部署的状态,而只能访问其源和日志记录!

这是有道理的,毕竟,你应该运行一个无状态的应用程序......

于 2018-04-18T19:42:55.250 回答