AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-241799

gogasca's questions

Martin Hope
gogasca
Asked: 2018-11-13 23:13:52 +0800 CST

通过 Linux 命令更新所有 Python 文件

  • 0

在我的原始 Python 文件中,我有以下内容:

from official.utils.flags import _base

我需要将其更改为:

from utils.flags import _base

我的文件结构如下所示:

.
├── README.md
├── requirements.txt
├── setup.py
└── trainer
    ├── __init__.py
    ├── task.py
    ├── task_eager.py
    ├── dataset.py
    └── utils

我所有的 Python 文件都位于 utils 文件夹下。我试过了:

find . -type f -exec sed -i -e "s/from official./from /g" {} +

但我看到创建了一堆新文件:

test.py             test.py.py          test.py.py.py           test.py.py.py.py        test.py.py.py.py.py     test.py.py.py.py.py.py
test.py-e           test.py.py-e            test.py.py.py-e         test.py.py.py.py-e      test.py.py.py.py.py-e       test.py.py.py.py.py.py-e
find
  • 1 个回答
  • 38 Views
Martin Hope
gogasca
Asked: 2016-02-16 00:53:38 +0800 CST

Docker compose 和 nginx 负载均衡器

  • 1

目前我有 2 个 Docker 容器:

  • 应用程序(python烧瓶)
  • 负载均衡器 (nginx)

我使用docker-composer up分别启动两个容器 Nginx 正在侦听端口 8080,并且应该将 HTTP 请求转发到正在侦听端口 8081 的应用程序。目前这不起作用,因为 nginx 对应用程序容器一无所知。

86615a5b0f02        parzee/loadbalancer   "/usr/local/bin/start"   3 minutes ago       Up 3 minutes        127.0.0.1:8080->8080/tcp   loadbalancer_loadbalancer_1
9adc8a04b356        parzee/application    "/usr/local/bin/start"   6 minutes ago       Up 5 minutes        127.0.0.1:8081->8081/tcp   application_application_1

这是我的默认配置

upstream application {
    ip_hash;
        server application_application_1:8081 fail_timeout=0;
        server application_application_2:8081 fail_timeout=0;
    keepalive 64;
}

server {
    listen 8080;
    server_name loadbalancer;
    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;

    location / {
        proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;

    #Timeout after 8 hours
    proxy_read_timeout 43200000;
    proxy_connect_timeout 43200000;

        proxy_redirect off;
        if (!-f $request_filename) {
            proxy_pass http://application;
            break;
        }
    }
}

我得到:

2016/02/15 08:42:07 [emerg] 21#0: host not found in upstream "application_application_1:8081" in /etc/nginx/sites-enabled/default:3
2016/02/15 08:42:10 [emerg] 22#0: host not found in upstream "application_application_1:8081" in /etc/nginx/sites-enabled/default:3

如何使用主机或 IP 地址定义我的 nginx 配置?我没有使用 IP 地址,因为 docker 可能会从已知范围分配不同的 IP。有什么建议么?我应该在一个 docker-compose.yml 文件中启动所有这些吗?

ubuntu
  • 2 个回答
  • 1914 Views
Martin Hope
gogasca
Asked: 2016-02-15 23:20:30 +0800 CST

Docker, docker-compose 应用程序设置

  • 3

我开始将我的应用程序迁移到 Docker 容器:我使用 Ngnix、supervisord、gunicorn、python flask、celery、flower、lighttpd、RabbitMQ 和 Postgresql。在我原来的虚拟机中,我将所有配置保存在 /usr/local/src/application/conf/ 在 settings.py 中,我定义了我的:

SQLALCHEMY_DATABASE_URI

在 celeryconfig.py 我定义:

BROKER_URL

我将创建 5 个容器:

  • Ngnix 负载均衡器
  • 烧瓶 API
  • 芹菜
  • 兔MQ
  • 轻量级

我正在使用 docker-compose 和卷。因为现在我所有的 IP 地址都是 localhost (127.0.0.1)

  1. 对于我的每个容器访问通用配置的建议是什么?卷?

  2. 我如何知道为每个容器分配了哪个 IP 地址,以便我可以定义我的设置?例如,当 RabbitMQ 启动时,我应该在 BROKER_URL 中配置什么 IP?

  3. 由于我的 Docker 应用程序仍将指向我的 git 存储库,我可以将它指向我的主机文件夹,我应该在这里使用卷吗?

基础设施

docker
  • 1 个回答
  • 1228 Views
Martin Hope
gogasca
Asked: 2016-02-15 14:57:59 +0800 CST

Docker 撰写卷无效字符

  • 2

无法使用 docker-compose up 启动容器

Docker version 1.9.1, build a34a1d5

Dockerfile

FROM ubuntu

# File Author / Maintainer
MAINTAINER Parzee info@parzee.com

# Install Components.

# Update the repository
ENV LANG en_US.UTF-8
ENV DEBIAN_FRONTEND noninteractive

RUN apt-get update
RUN locale-gen en_US en_US.UTF-8
# Install necessary tools
RUN apt-get install -y nano vim wget dialog net-tools
RUN apt-get install lighttpd -y
RUN apt-get install php5-common php5-cgi php5 -y
RUN lighty-enable-mod fastcgi-php
RUN update-rc.d -f lighttpd disable
RUN mkdir -p /usr/local/src/imbue/application/imbue/utils/security/des

ADD lighttpd.conf /etc/lighttpd/

VOLUME ["/var/log/lighttpd"]

RUN ls -al /etc/lighttpd/lighttpd.conf

RUN /usr/sbin/lighttpd -f /etc/lighttpd/lighttpd.conf

EXPOSE 8083

码头工人-compose.yml

lighttpd:
  image: parzee/lighttpd
  ports: 
    - "8083:8083"
  volumes:
    - volumes/log:/var/log/lighttpd 

当我运行时:

docker run -h lighttpd -p 8083:8083 -d -v `pwd`/volumes/log:/var/log/lighttpd -t parzee/lighttpd

我的容器启动正常,但是使用docker-compose up我收到以下错误:

Creating lighttpd_lighttpd_1
ERROR: volumes/log includes invalid characters for a local volume name, only [a-zA-Z0-9][a-zA-Z0-9_.-] are allowed

这是文件结构:

.
├── docker-compose.yml
├── Dockerfile
├── lighttpd.conf
└── volumes
    ├── etc
    │   └── lighttpd
    │       └── lighttpd.conf
    └── log

4 directories, 4 files
ubuntu
  • 2 个回答
  • 3438 Views
Martin Hope
gogasca
Asked: 2016-02-15 14:51:57 +0800 CST

Docker撰写冲突错误

  • 1

无法使用 docker-compose up 启动容器

Docker version 1.9.1, build a34a1d5

Dockerfile

FROM ubuntu

# File Author / Maintainer
MAINTAINER Parzee info@parzee.com

# Install Components.

# Update the repository
ENV LANG en_US.UTF-8
ENV DEBIAN_FRONTEND noninteractive

RUN apt-get update
RUN locale-gen en_US en_US.UTF-8
# Install necessary tools
RUN apt-get install -y nano vim wget dialog net-tools
RUN apt-get install lighttpd -y
RUN apt-get install php5-common php5-cgi php5 -y
RUN lighty-enable-mod fastcgi-php
RUN update-rc.d -f lighttpd disable
RUN mkdir -p /usr/local/src/imbue/application/imbue/utils/security/des

ADD lighttpd.conf /etc/lighttpd/

VOLUME ["/var/log/lighttpd"]

RUN ls -al /etc/lighttpd/lighttpd.conf

RUN /usr/sbin/lighttpd -f /etc/lighttpd/lighttpd.conf

EXPOSE 8083

码头工人-compose.yml

lighttpd:
  image: parzee/lighttpd
  ports: 
    - "8083:8083"
  volumes:
    - volumes/log:/var/log/lighttpd 

当我运行时:

docker run -h lighttpd -p 8083:8083 -d -v `pwd`/volumes/log:/var/log/lighttpd -t parzee/lighttpd

我的容器启动正常,但使用 docker-compose 我收到以下错误:

Creating lighttpd_lighttpd_1
ERROR: Conflict. The name "lighttpd_lighttpd_1" is already in use by container e7ec110d68ad. You have to remove (or rename) that container to be able to reuse that name.
# docker images
REPOSITORY            TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
parzee/lighttpd       latest              47cf7b87858d        43 minutes ago      299.7 MB
parzee/loadbalancer   latest              db1cb8f5f4e2        9 hours ago         295.4 MB
parzee/application    latest              a2a632be751b        11 hours ago        722.9 MB
parzee/imbue          latest              5347302fee40        4 days ago          1.347 GB
parzee/database       latest              eb2faddc2a5c        4 days ago          374.5 MB
ubuntu                14.04               c4bea91afef3        5 weeks ago         187.9 MB
ubuntu                latest              c4bea91afef3        5 weeks ago         187.9 MB
# docker ps -al
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
2eb1565da8d5        parzee/lighttpd     "/bin/bash"         33 minutes ago      Exited (0) 21 minutes ago                       modest_almeida

我试图重新启动机器,docker rmi image,docker-compose kill,运气不好有什么建议吗?

ubuntu
  • 1 个回答
  • 1690 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve