Docker for Windows
我有一台装有2个容器的机器。它们都运行标准的mysql映像。一个被设置为服务器,我从另一个链接到它并尝试运行mysql命令。
理想情况下,我希望能够通过命令提示符完成所有操作,以便我可以通过Python调用它。
我能够无错误地运行一些命令,并尝试将我的名字放入myDB的Username表中。
当我运行命令时:
docker exec sqlserverClient mysql -uroot -ppassword -e"use myDB" -e"select * from Usernames"
我收到了输出:
Warning: Using a password on the command line interface can be insecure
没有别的。
我的桌子在哪里?即使插入错误,我不应该至少看到一张空白表吗?
我希望看到类似的东西:
+------------+-------------+
| firstname | lastname |
+------------+-------------+
| First | Last |
+------------+-------------+
“docker logs sqlserverClient”没有它。那它去哪儿了?
答案 0 :(得分:3)
尝试使用def numTri(n):
a=1
col_per_row=1
while a<=n:
s=""
for y in range(1,col_per_row+1):
s+=str(a)
a=a+1
col_per_row=col_per_row+1
if(a==n+1):
print(s),
else:
print(s)
,获取tty和输出
但请记住docker exec
仅用于调试。
最佳做法是使用:
的docker容器那是:
print(s,end="")
执行命令后,容器停止并被删除。
这意味着你可以拥有一个别名:
docker exec -it
并致电:
docker run --rm -it sqlimage mysql -uroot -ppassword -e"use myDB" -e"select * from Usernames"