docker 曾经出山很久了,初出江湖就一举成名,在程序员的江湖里声名远扬,作为江湖里的一粒尘埃,早就想从他身上学个一招半式,通过江湖上的口口流传,把握了他的根本套路,用来锤炼锻炼身体很给力。然而始终以来,这一招半式,只能应用构建本人的开发环境,无奈和本人开发的我的项目联合革新为容器化,因为之前没接触过 dockerfile、docker-compose.yml 这些秘籍。偶然间遇到了 derrick 这位高人,分分钟给你写出武林秘籍。
刚开始想用 derrick 创立一个 maven 我的项目的容器,然而始终报错
[Non-resolvable parent POM and 'parent.relativePath' points at wrong local POM - maven](https://html.developreference.com/article/16790535/Maven%3aNon-resolvable+parent+POM+and+'parent.relativePath'+points+at+wrong+local+POM)
原来是因为我的 maven 我的项目存在父子级依赖,应用过很多办法,仍然报这个问题,果决放弃,就是这么洒脱
前面决定创立一个 nodejs 我的项目容器
1. 装置 derrick
sudo -H pip3 install python-derrick
ps:
不要遗记 -H;
mac 默认是低版本的 Python,我的电脑是 2.7,看下本地有没有 3.7 版本的 python
which python 以及 which pip
which python3 和 which pip3
如果没有,则装置
brew install python3。
能够间接 应用 pip3 命令,如果想永恒失效,能够通过在
vim ~/.bash_profile 配置别名失效
alias python=”/usr/local/bin/python3.7″
alias python=”/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7″ alias pip=”/Library/Frameworks/Python.framework/Versions/3.7/bin/pip3″
2. 初始化 derrick
derrick config
ps:
命令不肯定正确哦,跟着提醒来就行了
3. 生成 dockerfile
到我的项目根目录,执行命令
derrick init
生成上面的几个文件,Jenkinsfile 是给 jenkins 应用的,kubernetes-deployment.yaml 是给 kubernetes 应用的,如果只是单纯的 docker,只用到 docker-compose.yml、Dockerfile
4. 创立镜像
到我的项目根目录,执行命令
derrick up
执行命令后,会提醒输出镜像名称,输出名称后回车
huangzx3.exam.front:test4
如不出意外,会生成镜像
5. 执行容器
执行命令
docker run -p 8002:8002 huangzx3.exam.front:test4
ps:
1.package.json 不要遗记加个 start
2. 如果是 dev 形式启动 nodejs,不要遗记批改 vue.config.js 中的 host 为 0.0.0.0,不然宿主机没方法拜访到容器