也就是说,访问Linux虚拟机的9060端口,就是在访问docker容器的9060端口
–name ef_nfcs:给容器取个名字,嫌麻烦可以省去
ef_nfcs_img:容器是用哪个镜像启动的(一个容器,必须依赖一个镜像启动)
和原来用PyCharm启动的效果一致:
原来访问系统:
现在访问系统,只要将IP替换成虚拟机的IP:
这就OK啦
4:一些实用命令
退出容器又不关闭容器:Ctrl + P + Q
比如这种情况:
直接输入exit 会退出且关闭容器,工程就stop了
或者Ctrl + C,会报错KeyboardInterrupt,工程就也stop了
再访问就访问不了了:
此时,就需要使用命令:docker start 容器ID,去再启动容器后,就可以继续访问工程了,
使用命令:
docker exec -it 容器ID /bin/bash
docker attach 容器ID,重新进入容器后,可查看程序打印的日志
但是,如果使用Ctrl + P + Q退出容器,就不会中断工程,等于退出容器后,还可访问容器的工程,
再进入,也是使用命令:docker attach 容器ID
ctrl+d 退出容器且关闭, docker ps 查看无
ctrl+p+q 退出容器但不关闭
查看安装的docker:yum list installed | grep docker
查看容器:docker ps -a
查看镜像:docker images
删除容器:docker rm 容器ID
删除镜像:docker rmi 镜像ID/镜像名
安装rz上传,sz下载的命令:yum -y install lrzsz
docker inspect 容器ID:返回一个Json文件记录Docker容器的配置和状态信息
将容器导出到容器的镜像文件 : docker export 容器ID > update.tar
用容器的镜像文件创建一个新静像:docker import - 镜像名 < update.tar
创建完成之后,生成并启动镜像的容器:docker run -it 镜像名
不行就在后面加一个/bin/bash ,然后进入code的package目录,手动启动程序:python server.py
比如报错:Error response from daemon: No command specified
镜像保存为镜像文件: docker save -o update1.tar update(update是一个已经存在的镜像)
从镜像文件加载生成新镜像:docker load < update1.tar
有时候,从镜像文件加载生成新镜像,会报错如下:
open /var/lib/docker/tmp/docker-import-559669842/bin/json: no such file or directory
从以命令可以解决:
cat jdkself.tar | docker import - jdkself
jdkself.tar为镜像文件名称,jdkself为镜像名称
转载地址:https://blog.csdn.net/u013282737/article/details/85233408序言:介绍一下需要运行的Python项目的结构:平时在PyCharm里面运行该工程,只要直接运行server.py文件即可现在希望将该工程,部署到docker里面,使用容器启动:步骤如下:1:创建一个上传到Linux系统文件夹(文件名任意)docker_EF_NFCS是要上传到Linux系统,生成Docker镜像的文件夹docker_EF_NFCS文件夹下面有两个东东,
如何通过Docker运行Python脚本1.搭建docker环境WindowsLinux2.编写Python脚本(以cowpy为例)3.生成requirements.txt4.编写Dockerfile5.生成docker镜像文件5.运行
1.搭建docker环境
Windows
下载地址:https://hub.docker.com/editions/community/docker-ce-desktop-windows/
Linux
1.检查系统版本(uname -r),centOS需满足系统为64位,
title: Docker系列四持久运行python脚本
date: 2020-10-24 08:33:19
想法是从csdn上面发现的一个博客开始的,能够修改微信步数。缺点就是要一直运行才可以,那干脆扔到服务器上不就好了。
首先要保证在自己本地能够运行,传送门在最下面。
接下来就是纠结如何才能够在服务器上面运行了,纠结之后还是选择使用docker来持久运行python脚本。
基于centos的python3环境
寻找并拉取镜像
docker search centos
docker pull cen
docker run -d configserver tail -f /dev/null
docker run -d configserver /bin/bash ping 127.0.0.1
docker run -d configserver /bin/bash -c "while true;do
1. 创建一个名为 `Dockerfile` 的文件,并将其放置在项目的根目录下。
2. 在 `Dockerfile` 中,指定基础镜像,可以选择适合你的Python版本的基础镜像,如 `python:3.9`。
3. 将项目文件复制到镜像内部的指定位置,可以使用 `COPY` 命令将项目目录中的文件复制到镜像中的指定路径。
4. 安装项目所需的依赖项,可以使用 `RUN` 命令执行安装命令,如 `pip install -r requirements.txt`。
5. 指定容器启动时要执行的命令,可以使用 `CMD` 命令指定要运行的Python脚本或命令。
以下是一个简单的示例 `Dockerfile`:
# 使用 Python 3.9 作为基础镜像
FROM python:3.9
# 设置工作目录
WORKDIR /app
# 将项目文件复制到镜像中的 /app 目录
COPY . /app
# 安装依赖项
RUN pip install -r requirements.txt
# 指定容器启动时要执行的命令
CMD [ "python", "app.py" ]
在完成了以上步骤后,可以使用 Docker 命令构建镜像并运行容器。在项目目录下执行以下命令:
docker build -t my-python-app .
这将会构建一个名为 `my-python-app` 的镜像。接下来,可以使用以下命令运行容器:
docker run -it my-python-app
这将会在容器中启动你的Python项目。请确保在 `Dockerfile` 和项目目录中包含了所需的文件和依赖项。