Docker:3、在VSCode上安装并运行python程序或JavaScript程序

1.VSCode上安装并运行python程序:

1.1.安装Docker插件

1.2.新建自动化脚本DockerFile

dockerfile 复制代码
FROM python:3.-slim-buster 
WORKDIR /app 
COPY .. 
RUN pip3 install -r requirements.txt 
CMD ["python3", "app.py"]
  • COPY <本地路径><目标路径>,第一个点代表根目录下的所有文件,第二个点表示当前的工作路径。
  • RUN允许我们在创建镜像时运行任意的shell命令。
  • Pip install 来安装Python程序的所需库。
  • CMD来指定当Docker容器运行之后要执行的命令

1.3.创建镜像

打开vscode终端,输入命令

shell 复制代码
docker build -t yourImageName .
  • -t 后面跟的参数yourImageName应该替换成你要创建的镜像的名字。
  • 最后的.告诉docker应该在当前目录下寻找这个Dockerfile

再输入docker images或者docker image ls命令,查看docker创建的镜像列表里面是否包含刚刚我们创建的镜像。

1.4.启动容器

打开vscode终端,输入命令

shell 复制代码
docker run -p 80:50000 -d yourImageName
  • -p 后面跟的参数是本机端口
  • :后面跟的是映射的docker容器的端口
  • -d 让容器在后台运行,这样容器的输出就不会直接显示在控制台上。

也可以不进行端口映射,直接启动

shell 复制代码
docker run yourImageName

或者在dockerdesktop中进行启动

1.5.通过dockerdesktop动态监督

dockerdesktop可以查看程序的动态数据。

2.VSCode上安装并运行js程序:

2.0.准备js程序

新建一个文件夹docker_learn,里面新建一个index.js文件,文件内只有一行代码

js 复制代码
console.log("快速上手docker");

vscode的控制台里跳转到这个文件所在的目录,并输入命令node index.js

此时发现控制台成功打印数据。那么js程序算准备好

注意:如果控制台提示说【node : 无法将"node"项识别为 cmdlet、函数、脚本文件或可运行程序的名称。】

说明nodejs没有安装或者环境变量没有配置好。请安装或配置好后再继续以下步骤。

2.1.安装Docker插件

同1.1

2.2.新建自动化脚本DockerFile

现在我们在项目中再新建一个Dockerfile文件。注意文件名开头大写。

Dockerfile 复制代码
FROM node:14-alpine
COPY index.js /index.js
CMD node /index.js
  • from命令指定一个基础镜像。这里的alpineredhatcentos一样,都属于linux发行版的一种,但是它是轻量级的,只有几十兆。
  • copy命令表示复制应用程序到镜像中。第一个参数为源路径,指的是相对于Dockerfile文件的路径。第二个参数是目标路径,是相当于镜像的路径。
  • cmd命令第一个参数表示可执行程序的名字。第二个参数表示可执行程序接收到的参数。

2.3.创建镜像

同1.3

2.4.启动容器

同1.4

2.5.通过dockerdesktop动态监督

同1.5.

相关推荐
Bert.Cai几秒前
Linux cat命令详解
linux·运维
xcLeigh5 分钟前
KES数据库表空间目录自动创建特性详解与存储运维最佳实践
大数据·运维·服务器·数据库·表空间·存储
小陈工6 分钟前
2026年4月8日技术资讯洞察:边缘AI推理框架竞争白热化,Python后端开发者的机遇与挑战
开发语言·数据库·人工智能·python·微服务·回归
赵药师8 分钟前
YOLO中task.py改复杂的模块
python·深度学习·yolo
weixin_4493108414 分钟前
电商对账革命:破解效率困局,拥抱自动化转型
运维·自动化
Agent产品评测局17 分钟前
企业工单处理自动化落地,派单回访全流程闭环实现:2026架构升级与多方案全景盘点
运维·人工智能·ai·架构·自动化
大飞记Python17 分钟前
【2026更新】Python基础学习指南(AI版)——03内置函数
人工智能·python
断眉的派大星22 分钟前
pytorch中链式法则求解梯度
人工智能·pytorch·python
问简23 分钟前
ubuntu 输入法优化
linux·运维·ubuntu
疯狂成瘾者34 分钟前
text_splitter常见方法
python·langchain