前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >docker使用笔记 I -- Dockerfile\build\run\kill

docker使用笔记 I -- Dockerfile\build\run\kill

作者头像
老高的技术博客
发布2022-12-28 10:01:51
2130
发布2022-12-28 10:01:51
举报
文章被收录于专栏:老高的技术博客

docker -- 像安装卸载APP一样简单的部署服务器。

这些文章是老高自己使用docker是的一些笔记,偶尔会更新。

docker的基本命令之前有一篇在mac上安装并使用docker

之前只是理论上的,现在来一些干货吧

创建一个redis服务

创建Dockerfile

代码语言:javascript
复制
# 选择一个服务器,这里我们选择Ubuntu
FROM ubuntu:14.04
# 维护者当然是自己了
MAINTAINER LAO GAO <endoffight#gmail.com>

# 运行一些命令
RUN    apt-get update \
&& apt-get install redis-server -y

# 需要暴露的端口
EXPOSE      6379

# 执行点,以后讲
ENTRYPOINT  ["/usr/bin/redis-server"]

小技巧,想要加速你的docker构建,请把COPY等不能缓存的操作尽量延后,更多可以点此阅读(https://blog.phpgao.com/%E5%85%B6%E5%AE%9E%E5%9C%A8Dockerfile%E9%87%8C%E7%9A%84%E6%AF%8F%E9%83%A8%E9%83%BD%E4%BC%9A%E8%A2%AB%E8%AE%B0%E5%BD%95%EF%BC%8C%E4%BD%86%E6%98%AF%E5%A6%82%E6%9E%9Cbuild%E7%9A%84%E6%97%B6%E5%80%99351c9ed71c829ea9c81356619adc2e322%EF%BC%8C%E8%BF%99%E4%BA%9B%E4%B8%B4%E6%97%B6%E9%95%9C%E5%83%8F%E5%B0%B1%E4%BC%9A%E8%A2%AB%E5%88%A0%E9%99%A4%EF%BC%8C%E4%B9%9F%E5%B0%B1%E8%BE%BE%E4%B8%8D%E5%88%B0%E7%BC%93%E5%AD%98%E7%9A%84%E6%95%88%E6%9E%9C%E4%BA%86%EF%BC%81)

精简版Dockerfile

代码语言:javascript
复制
FROM ubuntu:14.04
MAINTAINER LAO GAO <endoffight#gmail.com>
RUN    apt-get update \
&& apt-get install redis-server -y
EXPOSE      6379
ENTRYPOINT  ["/usr/bin/redis-server"]

将以上内容写入文件redis.dockerfile,或Dockerfile都行!

构建镜像

代码语言:javascript
复制
sudo docker build -h

# 大家可以在帮助里找到--rm=true 和 -t 的说明

sudo docker build --rm=true -t laogao/redis .

sudo docker build --rm=true -t laogao/redis -< redis.dockerfile

由于国情,我们的构建过程可能不是一帆分顺的,在对安全性不高的场景,我们可以适当的精简一些构建命令,比如apt-get update,你懂的。

当出现下面的文字时,表示创建成功!

Removing intermediate container a8cd45890eaa Successfully built e458fcc69539

运行sudo docker images可以查看所有本地镜像。

镜像跑起来

DOCKER RUN

代码语言:javascript
复制
# 查看帮助
sudo docker run --help

# -i 表示不在后台运行
sudo docker run -i -t -p 6379:6379 laogao/redis

# 后台运行并限制1G内存
sudo docker run -m 1g -d -p 6379:6379 laogao/redis

DOCKER管理命令

如何管理无数个运行在本机的docker实例呢?

代码语言:javascript
复制
# 镜像在哪儿?
sudo ls -la /var/lib/docker/

# 查看某个容器的环境变量
sodu docker run IMAGE env

# docker的任务管理器 /  默认只显示running的,加上参数-a显示所/-q只显示唯一编号
sudo docker ps --help

# docker容器的删除命令
sudo docker rm --help

# 查看镜像
sudo docker images --help

# 删除镜像
sudo docker rmi --help

# docker的停止命令
sudo docker kill --help

# 一些常用的批量操作命令

# 杀死所有正在运行的容器
sudo docker kill $(docker ps -a -q)

# 删除所有已经停止的容器
sudo docker rm $(docker ps -a -q)

至此,你是已经运行起来你的第一个docker实例呢?

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-11-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 创建一个redis服务
    • 创建Dockerfile
      • 精简版Dockerfile
      • 构建镜像
      • 镜像跑起来
        • DOCKER RUN
          • DOCKER管理命令
          相关产品与服务
          云数据库 Redis®
          腾讯云数据库 Redis®(TencentDB for Redis®)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档