标签:参数 cache 综合 err error: world 关闭数据库 mys calendar
Dockerfile
FROM python:3 WORKDIR /usr/src/app COPY requirements.txt ./ RUN pip install --no-cache-dir -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt COPY code/helloworld.py /usr/src/app/ VOLUME /usr/src/app ENTRYPOINT ["python"] CMD ["helloworld.py"]
requirement.txt
PyMySQL opencv-python
docker build -t my_py .
print(‘hello world !‘)
执行命令,参数说明:
????-v:将本地目录挂载到python工作目录以方便代码修改
????--rm:运行完毕后自动移除容器。docker run --rm -v /home/hcr/python/code:/usr/src/app my_py
import calendar # 输入指定年月 yy = int(input("输入年份: ")) mm = int(input("输入月份: ")) #设置第一天是星期天 calendar.setfirstweekday(firstweekday=6) # 显示日历 print(calendar.month(yy,mm))
执行命令,参数说明:
????-it:声明需要交互式终端以读取输入docker run -it --rm -v /home/hcr/python/code:/usr/src/app my_py date.py
import pymysql # 打开数据库连接 db = pymysql.connect("hcr_mysql", "docker", "123456", "docker_mysql") # 创建游标对象 cursor = db.cursor() # 查询数据库数据 sql = """select * FROM user""" cursor.execute(sql) results = cursor.fetchall() print(results) # 插入 sql = """insert user(id,username) values(‘02‘,‘darling‘)""" cursor.execute(sql) db.commit() # 插入完成后再读取一次数据库数据 sql = """select * FROM user""" cursor.execute(sql) results = cursor.fetchall() print(results) # 关闭数据库连接 db.close()
docker run --rm -v /home/hcr/python/code:/usr/src/app --link=hcr_mysql my_py sql.py
import cv2 img = cv2.imread("test.jpg", 1) res = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) cv2.imwrite(‘result.jpg‘, res) print("success!")
docker run -it --rm -v /home/hcr/python/code:/usr/src/app my_py opencv.py
????左图为原始图片,右图是执行程序后生成的图片
????在构建日历输出的容器时报
EOFError: EOF when reaeding a line
的错误,查阅后了解到,由于日历输出的程序用到了input,需要输入内容,因此运行容器的时候需要用到-it参数,添上即可。
????此次实验大概花了3h,相比于上次实验,这次实验做的可真的是太轻松了。
标签:参数 cache 综合 err error: world 关闭数据库 mys calendar
原文地址:https://www.cnblogs.com/honger125/p/12917337.html