您可以在几秒钟内使用Dockerfile构建容器,那么为什么人们需要在docker容器中安装虚拟环境?
它就像虚拟机中的"虚拟机"?
我在带有织物的django docker容器中创建了createperperuser.
要在django中创建超级用户,我需要在django交互模式下运行它:
./manage.py createsuperuser
Run Code Online (Sandbox Code Playgroud)
因为我想让它在Fabric脚本中运行,所以我发现这个命令可以避免输入密码
echo "from django.contrib.auth.models import User; User.objects.create_superuser('admin', 'admin@example.com', 'pass')" | ./manage.py shell
Run Code Online (Sandbox Code Playgroud)
然后我把它与"docker exec"放在一起,在我的django容器中运行它
docker exec container_django echo "from django.contrib.auth.models import User; User.objects.create_superuser('admin', 'admin@example.com', 'pass')" | ./manage.py shell
Run Code Online (Sandbox Code Playgroud)
问题出来了linux管道,管道(|)左边的所有内容(包括docker exec)到它的右边(./ manage.py shell)
这不仅是困难的部分,考虑将所有这些容器放入结构运行中,这意味着它们需要两端的引号.它会让整件事变得非常难看.
fabric run:
run("docker exec container_django {command to create django super user}")
Run Code Online (Sandbox Code Playgroud)
我仍在努力研究如何在面料运行中制作至少垃圾工作,但我不知道该怎么做.
尝试使用新的django 1.9版本,并通过以下方式创建一个超级用户:
python manage.py createsuperuser
Run Code Online (Sandbox Code Playgroud)
而我只是想为我的本地开发环境使用一个简单的密码,就像只有一个字符,django1.9升级到一个非常严格的密码验证策略,我该如何绕过呢?
Password:
Password (again):
This password is too short. It must contain at least 8 characters.
This password is too common.
This password is entirely numeric.
Run Code Online (Sandbox Code Playgroud) 我跑进sudo apt-get install docker.io了我的lubuntu 14.10,但它说cannot start container当我跑这个:
sudo docker run ubuntu echo "Hello World"
exec format error2015/03/16 16:31:16 Error response from daemon: Cannot start container ad265ac9c2635f42e4244472d181a2121ecba4d855fa33c10599d91aa932d2cd: exec format error
Run Code Online (Sandbox Code Playgroud)
无法找到答案,客人可能与lubuntu有关.
容器已创建,但为什么我只得到"exec格式错误"
sudo docker ps -a
e92e43115003 ubuntu:14.04 "/bin/echo 'Hello wo About an hour ago sharp_hoover
uname -a
Linux ubuntu 3.16.0-31-generic #43-Ubuntu SMP Tue Mar 10 17:41:23 UTC 2015 i686 i686 i686 GNU/Linux
Run Code Online (Sandbox Code Playgroud) 根据getOpenFileName说明:
QString fileName = QFileDialog.getOpenFileName(this, tr("Open File"),
"/home",
tr("Images (*.png *.xpm *.jpg)"));
Run Code Online (Sandbox Code Playgroud)
当我关闭它时,如何让对话框记住最后一次的路径?
什么是tr意味着tr("Open File")什么?
谢谢
我正在使用python2.6和lxml,我想像这样将顶级注释添加到xml中
<?xml version='1.0' encoding='UTF-8'?>
<!--top level comment-->
<DCSubtitle/>
Run Code Online (Sandbox Code Playgroud)
我用谷歌这个addprevious()方法做到这一点,这是我的代码:
root = ET.Element("DCSubtitle")
root.addprevious(ET.Comment('top level comment'))
tree = ET.ElementTree(root)
tree.write(sys.stdout, pretty_print=True, xml_declaration=True, encoding='UTF-8')
Run Code Online (Sandbox Code Playgroud)
但是,addprevious()似乎不太合逻辑,您必须添加第二行,然后添加第一行,是否有更好的逻辑方法来做到这一点?谢谢。
我正在使用docker-compose.yml文件为我的django nginx postgresql和一个纯数据容器构建3个docker容器.
这是我的docker-compose.yml
data:
# pure data container
image: busybox
volumes:
- /etc/postgresql
- /var/log/postgresql:/var/log/postgresql
- /var/lib/postgresql
- /var/log/nginx:/var/log/nginx
- /var/log/supervisor:/var/log/supervisor
db:
image: postgres
volumes_from:
- data
web:
build: .
ports:
- "80:80"
- "443:443"
links:
- db
volumes_from:
- data
$docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
cc26b3a72a02 myweb_web:latest "supervisord -n" 6 minutes ago Up 6 minutes 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp myweb_web_1
14763a9f68d1 postgres:latest "/docker-entrypoint. 6 minutes ago Up 6 minutes 5432/tcp myweb_db_1
37598892038b busybox:latest "/bin/sh" …Run Code Online (Sandbox Code Playgroud) 4.13.0-32泛型
当我用这样的命令安装docker时,我得到了错误信息,我谷歌但无法得到解决方案.
sudo apt-get install docker-ce
Reading package lists... Done
Building dependency tree
Reading state information... Done
docker-ce is already the newest version (17.12.0~ce-0~ubuntu).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Setting up docker-ce (17.12.0~ce-0~ubuntu) ...
Job for docker.service failed because the control process exited with error code.
See "systemctl …Run Code Online (Sandbox Code Playgroud) 如何做这个列表/字典理解把这个 [("a", 1), ("b", 2), ("a", 3)]
进入这个
{
"a": [1, 3],
"b": [2]
}
Run Code Online (Sandbox Code Playgroud)
我知道如何在 for 循环中执行此操作,我可以只使用一行来完成这项工作吗?
我已经阅读了一段这样的代码:
s = self.buffer_file.readline()
if s[-1:] == "\n":
return s
Run Code Online (Sandbox Code Playgroud)
如果我这样做:
s = 'abc'
In [78]: id(s[-1:]), id(s[-1])
Out[78]: (140419827715248, 140419827715248)
In [79]: id(s[-1:]) is id(s[-1])
Out[79]: False
In [80]: id(s[-1:]) == id(s[-1])
Out[80]: True
Run Code Online (Sandbox Code Playgroud)
这对我来说没有意义,ID号是相同的,但ID是不同的.所以他们因某种原因不同.
python ×6
docker ×5
django ×3
ubuntu ×2
fabric ×1
list ×1
lxml ×1
passwords ×1
postgresql ×1
pyqt ×1
qfiledialog ×1
shell ×1
virtualenv ×1
xml ×1