小编use*_*106的帖子

当作为systemd/systemctl服务运行时,本地模块的python导入失败

我有一个python应用程序,我想作为系统服务运行.我手动运行应用程序时运行正常.当我将其作为服务运行时,它无法找到安装的本地模块pip install -e my_module.

该应用程序的主要代码如下:

print(sys.argv)
import pip
installed_packages = pip.get_installed_distributions()
installed_packages_list = sorted(["%s==%s" % (i.key, i.version) for i in installed_packages])
print(installed_packages_list)
print('doing tox')
import tox
print('doing my_mod')
import my_mod
print(my_mod.__file__)
from my_mod.auth.http_auth_provider import HTTPAuthProvider
Run Code Online (Sandbox Code Playgroud)

当我手动运行时,我得到(注意my-mod包含在'已安装的包'中的第二行):

['/usr/bin/pv_api']
['aiohttp==0.19.0', 'chardet==2.3.0', 'jsonschema==2.5.1', 'pip==7.0.0', 'pluggy==0.3.1', 'pv-api==0.0.0', 'py==1.4.31', 'pycrypto==2.6.1', 'pymongo==3.1.1', 'pyyaml==3.11', 'setuptools==19.6.2', 'six==1.10.0', 'tox==2.3.1', 'virtualenv==14.0.6', 'my-mod==0.1.0', 'webauthsession==1.1.1']
doing tox
doing my_mod
/root/my_module/my_mod/__init__.py
Run Code Online (Sandbox Code Playgroud)

在运行服务时,日志看起来像这样(注意my-mod不包含在'已安装包'的第二行)::

2016-02-26_00:39:01.90403 ['/usr/bin/pv_api']
2016-02-26_00:39:01.90406 ['aiohttp==0.19.0', 'chardet==2.3.0', 'jsonschema==2.5.1', 'pip==7.0.0', 'pluggy==0.3.1', 'pv-api==0.0.0', 'py==1.4.31', 'pycrypto==2.6.1', 'pymongo==3.1.1', 'pyyaml==3.11', 'setuptools==19.6.2', 'six==1.10.0', 'tox==2.3.1', 'virtualenv==14.0.6', 'webauthsession==1.1.1']
2016-02-26_00:39:01.90407 …
Run Code Online (Sandbox Code Playgroud)

python python-import systemd

17
推荐指数
4
解决办法
1万
查看次数

dockerfile可以放入.dockerignore吗?

文档说是的,它可以.

https://docs.docker.com/engine/reference/builder/

您甚至可以使用.dockerignore文件来排除Dockerfile和.dockerignore文件.这些文件仍然发送到守护程序,因为它需要它们来完成它的工作.但ADD和COPY指令不会将它们复制到图像中.

但是当我把dockerfile放在.dockerignore中时,我得到了

Sending build context to Docker daemon  1.646MB
Error response from daemon: Cannot locate specified Dockerfile: Dockerfile
Run Code Online (Sandbox Code Playgroud)

docker dockerfile

8
推荐指数
2
解决办法
5415
查看次数

如何在react项目中将plugin-export-default-from安装到Babel

在整个过程中我不断收到以下错误

SyntaxError: /Users/user1/npmprojects/experiments/test-reactstrap0/src/components/index.js: Support for the experimental syntax 'exportDefaultFrom' isn't currently enabled (15:8):

  13 | export * from './ListItems';
  14 | 
> 15 | export FormField from './FormField';
Run Code Online (Sandbox Code Playgroud)

首先我安装插件:yarn add @babel/plugin-proposal-export-default-from --save-dev

我也尝试过安装yarn add babel-preset-stage-1 --save-dev

我尝试添加包含内容的 .babelrc 文件

{
  "plugins": [
    "@babel/plugin-proposal-export-default-from"
  ]
}
Run Code Online (Sandbox Code Playgroud)

我尝试将以下内容添加到我的 package.json 中

"babel": {
    "presets": [
    "es2015",
    "stage-1",
    "react"
  ],
  "plugins": [
    "@babel/plugin-proposal-export-default-from"
  ]
}
Run Code Online (Sandbox Code Playgroud)

reactjs babeljs ecmascript-2017

6
推荐指数
1
解决办法
6823
查看次数