Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docker 使用的一些记录 #24

Open
IOriens opened this issue Oct 29, 2019 · 0 comments
Open

Docker 使用的一些记录 #24

IOriens opened this issue Oct 29, 2019 · 0 comments

Comments

@IOriens
Copy link
Owner

IOriens commented Oct 29, 2019

Docker 使用记录

image

一、安装 Docker

官方-Get Docker CE for Ubuntu
通过镜像源 安装 Docker CE
腾讯云安装docker服务及镜像加速配置 - Ubuntu

首次安装 Docker 可能会遇到的问题

如果你第一次安装 Docker 时没有使用国内镜像,你需要将 Docker 自带的ppa仓库地址删掉

方法一

直接改source.list 文件就行

sudo vim /etc/apt/sources.list

方法二

ubuntu使用命令行移除ppa仓库

二、镜像配置

镜像加速器
腾讯云-使用DockerHub加速器

腾讯云镜像下载加速

  1. 创建或修改 /etc/docker/daemon.json 文件,修改内容如下
{
  "registry-mirrors": [
    "https://mirror.ccs.tencentyun.com",
    "https://registry.docker-cn.com"
  ]
}
  1. 重启 Docker 以生效
sudo service docker restart

三、常用命令

镜像管理

下载镜像

docker pull xxxx

查看主机上所有镜像

docker image ls

清理未运行的镜像

docker image prune -a

运行镜像

docker run -d -p 5051:80 --env db_type=REDIS xxx

上面的命令意思是让 xxx 镜像在后台运行,并将镜像内的 80 端口映射到宿主的 5051 端口,同时设置了一个 db_type 环境变量。其它可选项:

  • -v hostDir:containerDir 可以将宿主机的文件夹挂载到容器中,这样能实现 Docker 内操作宿主机的文件(持久化)

  • -m 100M --memory-swap -1 限制内存为 100M 同时不限制 swap 的使用

  • --rm 运行结束时自动回收资源

  • --restart unless-stopped 除非手动关闭,总是自动重启容器

容器管理

查看运行中的容器

docker ps

可选参数:

  • -a 查看所有容器,包括意外终止的

清理停止运行的容器

docker container prune

查看容器资源使用情况

docker stats

打开容器内的命令行

docker exec -it (container ID) bash

查看容器日志

docker logs (container ID)

可选参数:

  • -f 持续跟踪日志
  • --tail 10 查看最后十条日志

一些方便的简写设置

alias dils='docker image ls'
alias dcls='docker container ls'
alias dclog='docker container logs'
alias dtail='docker service logs --since 3m --follow'
alias dshell='docker exec

其它

Access logs of a killed docker container

四、将 Node 应用打包成镜像

Dockerizing a Node.js web app

五、私有化发布镜像

国内有很多免费的私有化镜像仓库,推荐使用阿里云的容器镜像仓库

建议使用代码源构建。。

image

你也可以选择自己在服务器上部署仓库管理器

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant