小编Nat*_*teW的帖子

不能在CentOS上运行Docker容器中使用yum

我无法在我的Docker容器中运行任何yum命令而不会收到以下错误:

ovl: Error while doing RPMdb copy-up:
[Errno 13] Permission denied: '/var/lib/rpm/Group'
You need to be root to perform this command.
Run Code Online (Sandbox Code Playgroud)

我很困惑,因为我非常确定docker容器是使用默认用户root运行的.不过,如果我尝试把须藤在前面yum install -y <package>yum update -y命令我得到:

/bin/sh: sudo: command not found
Run Code Online (Sandbox Code Playgroud)

我正在使用以下基本映像,因此我可以在Docker中轻松运行Java Wildfly应用程序:https://hub.docker.com/r/jboss/wildfly/

底层发行版是 CentOS Linux release 7.2.1511 (Core)

containers sudo centos yum docker

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

从Javascript更新CSS模块变量

我正在使用一个(现在较旧的)版本的react-boilerplate,它带有CSS模块.它们的优点在于您可以创建变量并将其导入其他CSS文件中.

这是我的colors.css文件

:root {
  /* Status colors */
  --error: #842A2B;
  --success: #657C59;
  --pending: #666;
  --warning: #7E6939;
}
Run Code Online (Sandbox Code Playgroud)

当我导入该文件时,我只需要在我的.css文件的顶部使用:

@import 'components/App/colors.css';
Run Code Online (Sandbox Code Playgroud)

我希望我的网站有两个主题的选项,我希望能够使用Javascript动态更新这些变量.最好的方法是什么?

编辑:我希望有一种方法来更新colors.css文件,而不必在从两个可能的css文件中提取的所有组件中进行条件导入...让我知道是否有办法做到这一点,如果有,我会改变接受的答案.谢谢所有回答的人!

css postcss css-modules react-css-modules react-boilerplate

16
推荐指数
2
解决办法
1154
查看次数

是否可以将Internet Explorer停靠?

我想使用Selenium WebDriver和Docker而不是虚拟机在同一台机器上运行多个Internet Explorer版本.据我所知,Docker完全在Linux上运行,这将使得Docker中的IE无法实现.我只是问,因为我看到Docker正在使用Microsoft Azure.

internet-explorer docker

12
推荐指数
1
解决办法
2万
查看次数

无法使用Groovy Jenkinsfile读取Git环境变量Jenkins

Git插件(默认情况下)安装在我的Jenkins中,但是我无法获得应该由Git插件传入的env变量.我在找:

GIT_COMMIT
GIT_BRANCH
GIT_PREVIOUS_COMMIT 
GIT_PREVIOUS_SUCCESSFUL_COMMIT
GIT_URL
Run Code Online (Sandbox Code Playgroud)

我正在使用管道作业项目指向与Jenkins文件的Github仓库,代码如下

stage 'PushToProd'
node {
    git url: "https://github.com/username/fakeurl.git"
    echo "Starting PushToProd"
    sh 'printenv'
    sh 'env'
    sh 'echo $BRANCH_NAME' 
    sh 'echo $GIT_COMMIT'
}
Run Code Online (Sandbox Code Playgroud)

当我使用env或者printenv不使用Github插件时,我得到了大量的环境变量.
关于如何将Git env变量传递给作业的任何提示?

更新:当我使用Freestyle项目并使用shell步骤时,我能够轻松获取Git env变量echo $GIT_COMMIT.仍然想知道如何使用Jenkinsfile + Pipeline作业项来使其工作.

git groovy jenkins jenkins-pipeline jenkinsfile

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

将ES6类与Redux一起使用

我正在研究一个项目,它将大量数据从一个端点带入一个减速器.我想在ES6 Classes中转换那些数据,所以我可以给它们帮助方法,提供数据之间的关系,而不必一直使用普通的javascript对象.此外,为了获得数据之间的关系,我不得不进行n平方计算,这会减慢前端的速度.

以下是我看到的选项:

1)创建一个与redux商店连接的选择器.这个选择器可以从reducer获取数据并将其转换为我定义的多个ES6类.如果reducer获取不同的新数据,则选择器将重新创建ES6类实例化.

2)https://github.com/tommikaikkonen/redux-orm 这看起来也很棒.

3)在数据集上创建多个选择器,以计算数据集中的指定关系,因此每次我想获得一个本来是n平方计算得到的关系时,我就可以调用该选择器.

我的问题是我应该采取哪三条路线?除了这3个还有其他选择吗?或者人们只是在前端处理javascript对象而不处理ES6类.


更新:

两个月后,我还在生产中使用终极版-ORM,它太棒了!极力推荐.

javascript reactjs redux es6-class

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

为React + Redux应用发送回规范化或非规范化的API响应更好吗

我正在编写一个react-redux应用程序。首先,它调用单个端点,该端点返回大量数据作为高度嵌套的JSON。然后,我对其进行规范化并将其放入我的redux-orm模式。
对我来说,在后端创建嵌套数据只是为了遍历前端的嵌套数据以对其进行规范化似乎是很愚蠢的,因为它来自标准化的PostgreSQL数据库。

Database = Normalized --> 
API = Denormalized --> 
Frontend = Normalized
Run Code Online (Sandbox Code Playgroud)

只是发送回标准化的API响应是最佳实践吗?

normalize denormalization reactjs redux redux-orm

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

React-仅渲染一个子组件的优雅方法?

我正在处理表组件。当我在上左右滚动时,<tbody />我希望它更新xOffset的xOffset,<theader />它将在一个单独的组件中调用<Header Component />。结构如下:

<Parent Component >
    <Header Component />
    <Very Expensive Body divs/>
    <Very Expensive Body divs/>
    <Very Expensive Body divs/>
</Parent Component >
Run Code Online (Sandbox Code Playgroud)

滚动侦听器位于父组件上,而xOffset是父组件状态的一部分。当我左右滚动时,它也重新渲染了重新渲染身体组件的非常昂贵的工作。

对于仅重新渲染标题组件,我有哪些选择?

1)使用Redux和选择器。父组件将xOffset调度到应用程序状态,并<Header Component />仅在选择器上侦听该状态。似乎有点杀伤力...

2)我将所有<Very Expensive Body Comp divs >组件分解为自己的组件,并使用ShouldComponentUpdate以便如果除xOffset之外的所有内容都相同,它不会重新呈现。这似乎并不过分,但是我觉得我将要处理相同的问题,因为我必须将滚动侦听器放在这个新组件上,然后将父组件用作中介。 o

还有第三种更优雅的解决方案吗?

我希望有一种将函数传递给的方法,<Header Component />以便当父组件向左和向右滚动时,它使用该函数来更新的状态,<Header Component />这将导致它重新呈现。

reactjs redux react-redux

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

JSON内的PostgreSQL自动递增

是否可以仅使用SQL(例如serial)而不使用服务器代码在PostgreSQL的新JSON类型内部自动递增?

postgresql json auto-increment postgresql-9.4

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

将多个图像流传输到ImageMagick/GraphicsMagick子进程中

我能够将一个图像流传输到ImageMagick子进程中.我将我的代码从Pipe stream基于graphicsmagick/imagemagick子进程

我想合成多个图像流并将合成图像作为响应进行管道传输. 这是我的Node.js代码,它从我的AWS S3存储桶中检索图像,然后将其作为响应输出:

app.get('/composite_images', function(req, res){    
    res.writeHead(200, {'Content-Type' : 'image/png'});

    s3.get("/" + "fronttop.png").on("response", function(s3Res) {
      // '-'' means standard in or stdin
      var args = ['-', '-page', '+0+0', '-mosaic', '-'];
      var convert = spawn("convert", args);

      // This worked!
      s3Res.pipe(convert.stdin);

      convert.stdout.pipe(res);
      convert.stderr.pipe(process.stderr);
    }).end();
})
Run Code Online (Sandbox Code Playgroud)

官方文件

"此时IM不允许您只读取这样的流中的一个图像,处理它,然后再读取另一个图像.所有IM命令将始终读取整个流,然后关闭它.这将被修复为部分IMv7脚本处理."

是否可以使用GraphicsMagick/ImageMagick来合成多个图像流?

imagemagick stream node.js graphicsmagick

3
推荐指数
1
解决办法
1121
查看次数

如何通过传入的环境字典定义 Ansible playbook 环境

我的问题是我无法通过传入要设置为环境的 dict 来为整个剧本设置环境。那可能吗?

例如,这是我的 ansible playbook 示例:

- hosts: localhost
  vars:
    env_vars: "{{ PLAY_ENVS }}"

  environment: "{{ env_vars }}"

  tasks:
    - name: Here is what you passed in
      debug: msg="env_vars == {{ env_vars }}"

    - name: What is FAKE_ENV
      debug: msg="FAKE_ENV == {{ lookup('env', 'FAKE_ENV') }}"
Run Code Online (Sandbox Code Playgroud)

我正在传递命令:

/bin/ansible-playbook sample_playbook.yml --extra-vars '{PLAY_ENVS: {"FAKE_ENV":"/path/to/fake/destination"}}'
Run Code Online (Sandbox Code Playgroud)

我得到的答复如下:

PLAY [localhost] ***************************************************************

TASK [setup] *******************************************************************
ok: [localhost]

TASK [Here is what you passed in] **********************************************
ok: [localhost] => {
    "msg": "env_vars == {u'FAKE_ENV': u'/path/to/fake/destination'}"
}

TASK …
Run Code Online (Sandbox Code Playgroud)

dictionary environment-variables ansible

2
推荐指数
1
解决办法
1563
查看次数