docker 的应用

Posted haliofwu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker 的应用相关的知识,希望对你有一定的参考价值。

今天了解到docker之后,这真的是个大神器啊。
想当初给lab项目配环境的时候,配到傻啊。

好,不说废话。

安装:
docker 的安装本身没什么大问题,但是网上的资源下载下载不下来,命令行也下载不下来。最后从同事哪里要来两个offline package.

使用:
例如:项目 szww;
在本地的项目中 :
cd szww ;
创建文件 :.dockerignore,写入下面的内容:

.git
node_modules
npm-debug.log

创建Dockerfile:

FROM node:8.4
RUN mkdir /szww/
COPY . /szww
WORKDIR /szww
# --registry=https://registry.npm.taobao.org

RUN npm install -g grunt-cli //依赖的全局在 npm install之上
RUN npm install 
EXPOSE 5000

CMD ["grunt"]

在szww项目中:

sudo docker image build -t szww_frontend:0.0.1 .

sudo docker run -p 5000:5000 –network host szww_frontend:0.0.1

好了,明天可以打包了。

打包:

sudo docker save szww_frontend:0.0.1 -o szww_frontend.tar
sudo tar czvf szww_frontend.tar.gz szww_frontend.tar 打包成tar.gz文件
sudo chown myname szww_frontend.tar.gz //拥有者改为本人

docker基础操作

docker ps 查看正在运行的容器
docker stop container_id
docker ps -a 查看所有docker container
docker rm image_id
docker rmi container_id
docker images 查看所有的image
sudo docker run -e GO_SERVER_ADDR=http://172.20.4.154:9090 -p 5000:5000 szwj_frontend:0.0.1
//添加环境变量的方法

remove none images

第一种是build的时候就限制生成None image docker build –rm
docker system prune 删除没使用的container 以及None image

打包的时候出错,运行了docker system prune之后再次打包 就成功啦

sudo docker save image_id -o xxx.tar
sudo tar czvf file.tar.gz file.tar
sudo chown ss\\name file.tar
scp file.tar.gz ss\\othername@ip:

打包上传到共有库

docker tag szww-frontend:0.0.1 registry.xxx.com/ projectname/szww-frontend:0.0.1
docker login registry.xxx.com
docker push registry.xxx.com/projectname/szww-frontend:0.0.1

以上是关于docker 的应用的主要内容,如果未能解决你的问题,请参考以下文章

Docker-3 尝试Docker 应用栈

如何使用docker部署web应用

阿里云服务器-docker部署 web 应用(端口号)

Docker:docker-compose 应用

当当网Docker应用实践

使用docker部署一个go应用