小编Sno*_*bby的帖子

从docker容器连接到localhost上的Mysql

我在我的localhost上运行mysql我可以通过运行来连接它:

mysql -h 127.0.0.1 -P 3306 -u root -p
Run Code Online (Sandbox Code Playgroud)

我还用命令运行了docker container:

docker run -tid -v $(pwd):/code -p 3306:3306 -p 5000:5000 --name container container
Run Code Online (Sandbox Code Playgroud)

我想从docker容器访问我的Mysql数据库.所以我也从docker容器中输入:

mysql -h 127.0.0.1 -P 3306 -u root -p
Run Code Online (Sandbox Code Playgroud)

但它给了我错误:

ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111)
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?端口似乎是正确的. 编辑1ifconfig泊坞窗 输出:

eth0      Link encap:Ethernet  HWaddr 02:42:ac:11:00:02  
          inet addr:172.17.0.2  Bcast:0.0.0.0  Mask:255.255.0.0
          inet6 addr: fe80::42:acff:fe11:2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1780 errors:0 dropped:0 overruns:0 frame:0
          TX packets:977 errors:0 dropped:0 overruns:0 carrier:0 …
Run Code Online (Sandbox Code Playgroud)

mysql docker

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

每次从本地计算机进行“git push”后,在服务器上进行“Git pull”

我对git的使用非常简单。基本上我在本地机器上这样做:

echo 'Update' >> README.md
git add . && git commit -m 'update' && git push -u origin master
Run Code Online (Sandbox Code Playgroud)

然后在服务器上:

git pull
Run Code Online (Sandbox Code Playgroud)

就是这样。

每次我在本地计算机上进行更改时,我都会这样做。在我看来,我可以以某种方式优化它,但我还没有找到任何 git 命令来处理这个问题。

有没有办法不git pull每次有变化就打印呢?也许有一种方法可以自动进行add && commit && push

git

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

码头工人。从主机发送邮件

我可以使用邮件从主机发送邮件:

mail -s "Hooray" smb@example.com < /dev/null
Run Code Online (Sandbox Code Playgroud)

但我想使用主机服务器从 docker 容器发送邮件。当我尝试在运行命令中将其映射到 25 端口时,Docker 说“端口已在使用中”:

run -ti -p 25:25 container
Run Code Online (Sandbox Code Playgroud)

我怎样才能实现目标?主机为 Centos,docker 使用 Ubuntu。

ubuntu centos docker

5
推荐指数
1
解决办法
4412
查看次数

码头工人。在不同的文件夹中执行 npm 命令

我想npm install在容器中运行命令。但很简单:docker exec container npm install对我来说不是正确的事情。

我想在其中运行此命令,/home/client但我在容器中的工作目录是/home

那可能吗?我不想进入容器,我不想改变工作环境。

编辑 1 Dockerfile:

FROM ubuntu:16.04
COPY . /home
WORKDIR /home
RUN apt-get update && apt-get install -y \
    python-pip \
    postgresql \
    rabbitmq-server \
    libpq-dev \
    python-dev \
    npm \
    mongodb
RUN pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)

Docker 运行命令:

docker run \
-tid \
-p 8000:8000 \
-v $(PWD):/home \
--name container \
-e DB_NAME \
-e DB_USER \
-e DB_USER_PASSWORD \
-e DB_HOST \
-e …
Run Code Online (Sandbox Code Playgroud)

npm docker

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

在 Docker 容器中看不到 Django

我想在一个简单的 Docker 容器中运行 Django。

首先,我用 Docker 文件构建了我的容器。没有什么特别之处(只有 FROM、RUN 和 COPY 命令)

然后我用命令运行我的容器

docker run -tid -p 8000:8000 --name <container_name> <image>
Run Code Online (Sandbox Code Playgroud)

进入我的容器:

docker exec -it <container_name> bash
Run Code Online (Sandbox Code Playgroud)

运行 Django 服务器:

python manage.py runserver
Run Code Online (Sandbox Code Playgroud)

得到了:

Starting development server at http://127.0.0.1:8000/
Run Code Online (Sandbox Code Playgroud)

但是当我转到 127.0.0.1:8000 时,我什么也没看到:

The 127.0.0.1 page isn’t working
Run Code Online (Sandbox Code Playgroud)

没有 Nginx 或其他工作服务器。

我究竟做错了什么?

更新 1(Dockerfile)

FROM ubuntu:16.04
MAINTAINER Max Malyshev <user>
COPY . /root
WORKDIR /root
RUN apt-get update
RUN apt-get install python-pip -y
RUN apt-get install postgresql -y
RUN apt-get install rabbitmq-server …
Run Code Online (Sandbox Code Playgroud)

django docker

0
推荐指数
1
解决办法
1214
查看次数

有助于理解json(dict)结构的函数

我还没有找到有办法做到这一点.假设我收到一个像这样的JSON对象:

{'1_data':{'4_data':[{'5_data':'hooray'}, {'3_data':'hooray2'}], '2_data':[]}}
Run Code Online (Sandbox Code Playgroud)

很难立即说出,我应该如何从3_data键获得价值:data['1_data']['4_data'][1]['3_data']

我知道pprint,它有助于理解结构.但有时数据量巨大,需要时间

有什么方法可以帮助我吗?

python

0
推荐指数
1
解决办法
617
查看次数

标签 统计

docker ×4

centos ×1

django ×1

git ×1

mysql ×1

npm ×1

python ×1

ubuntu ×1