docker如何運(yùn)行一個(gè)python腳本
最近想學(xué)一下python,考慮到最近也在使用docker所以嘗試寫(xiě)一個(gè)最簡(jiǎn)單的python腳本在docker里運(yùn)行一次,廢話不多說(shuō)上代碼
一、編寫(xiě)最簡(jiǎn)單的python腳本
1.創(chuàng)建python文件
在/opt/python/下新建一個(gè)main.py文件
[root@iZbp1gb56hovi28396lxopZ python] vim main.py
2.放入代碼
文件內(nèi)容如下 按i輸入
def print_hi(name):
print(name)
if __name__ == '__main__':
print_hi("Hi, PyCharm")
print_hi("hello,world")
按 esc結(jié)束輸入再輸入:wq保存這個(gè)文本并退出
二、編寫(xiě)dockerfile文件
1.創(chuàng)建dockerfile文件
在/opt/python/下新建一個(gè)dockerfile文件
[root@iZbp1gb56hovi28396lxopZ python] vim dockerfile
2.dockerfile文件內(nèi)容
#拉取docker環(huán)境 FROM python #設(shè)置工作目錄 WORKDIR /app #將dockerfile同級(jí)目錄的文件傳到docker容器內(nèi)的app文件夾下 ADD . /app #運(yùn)行python的命令 CMD python main.py
三、啟動(dòng)docker
1.創(chuàng)建docker鏡像
在dockerfile同級(jí)目錄下運(yùn)行下列指令創(chuàng)建一個(gè)鏡像
[root@iZbp1gb56hovi28396lxopZ python] docker build -t pytest .
2.創(chuàng)建并運(yùn)行docker鏡像
查看已經(jīng)生成的鏡像
[root@iZbp1gb56hovi28396lxopZ python] docker image ls

運(yùn)行容器
[root@iZbp1gb56hovi28396lxopZ python] docker run -d pytest
3.查看docker運(yùn)行結(jié)果
查看的容器id

查看docker容器的日志
[root@iZbp1gb56hovi28396lxopZ python] docker logs d5d0c05c31fe
最后我們看到docker打印的日志有腳本寫(xiě)的內(nèi)容,代表運(yùn)行成功!

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
docker 移除掉運(yùn)行不正常的container操作
這篇文章主要介紹了docker 移除掉運(yùn)行不正常的container操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03
docker desktop無(wú)法啟動(dòng)的一種解決方法(附完整步驟)
這篇文章主要介紹了如何解決由于關(guān)閉虛擬化導(dǎo)致Docker Desktop無(wú)法啟動(dòng)的問(wèn)題,通過(guò)重新啟動(dòng)虛擬化和WSL發(fā)行版解決了問(wèn)題,并總結(jié)了其中的步驟和遇到的報(bào)錯(cuò),需要的朋友可以參考下2025-03-03
docker容器中登陸并操作postgresql的實(shí)現(xiàn)
本文主要介紹了docker容器中登陸并操作postgresql的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-02-02
Docker 集成KingBase的詳細(xì)過(guò)程
這篇文章主要介紹了Docker 集成KingBase的詳細(xì)過(guò)程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2025-04-04
Docker私有倉(cāng)庫(kù)Registry部署的實(shí)現(xiàn)
這篇文章主要介紹了Docker私有倉(cāng)庫(kù)Registry部署的實(shí)現(xiàn),私有倉(cāng)庫(kù)最常用的就是Registry、Harbor兩種,本文詳細(xì)介紹如何搭建registry私有倉(cāng)庫(kù),感興趣的可以了解一下2020-06-06
Skywalking?Docker單機(jī)環(huán)境搭建過(guò)程
這篇文章主要介紹了Skywalking?Docker單機(jī)環(huán)境搭建,本次搭建是基于MySQL進(jìn)行持久化,因此需要提前準(zhǔn)備好一個(gè)MySQL容器,需要的朋友可以參考下2024-02-02
將Docker數(shù)據(jù)遷移到新磁盤(pán)的操作指南
在容器化應(yīng)用的部署中,Docker 通常將數(shù)據(jù)存儲(chǔ)在默認(rèn)的 /var/lib/docker 目錄,然而,隨著容器數(shù)量的增加和鏡像的累積,該目錄可能會(huì)迅速占滿系統(tǒng)磁盤(pán)空間,從而影響系統(tǒng)的正常運(yùn)行,所以本文給大家介紹了如何將Docker數(shù)據(jù)遷移到新磁盤(pán)的操作指南,需要的朋友可以參考下2025-04-04
Docker中搭建FastDFS文件系統(tǒng)(多圖教程)
這篇文章主要介紹了Docker中搭建FastDFS文件系統(tǒng)(多圖教程),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05
Docker容器化部署嘗試——多容器通信(node+mongoDB+nginx)
這篇文章主要介紹了Docker容器化部署嘗試——多容器通信(node+mongoDB+nginx),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-12-12

