美文网首页
Docker快速入门

Docker快速入门

作者: 杰杰k | 来源:发表于2019-03-11 10:45 被阅读0次

安装nginx

  • 从docker hub上拉取镜像
 docker pull nginx:latest
  • 托管一些简单的静态内容
docker run --name some-nginx -v  $PWD/html:/usr/share/nginx/html:ro -d nginx
 -v $PWD/html:/usr/share/nginx/html:将主机中当前目录下的html挂载到容器的/usr/share/nginx/html
  • 或者准备自己的配置文件和文件目录
docker run -p 80:80 --name mynginx -v $PWD/www:/www -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf -v $PWD/logs:/wwwlogs  -d nginx
#dockerhub上有详细自定义配置部署说明
-p 80:80:将容器的80端口映射到主机的80端口
--name mynginx:将容器命名为mynginx
-v $PWD/www:/www:将主机中当前目录下的www挂载到容器的/www
-v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf:将主机中当前目录下的nginx.conf挂载到容器的/etc/nginx/nginx.conf
-v $PWD/logs:/wwwlogs:将主机中当前目录下的logs挂载到容器的/wwwlogs

注意:如果出现以下类似报错

docker: Error response from daemon: OCI runtime create failed: container_linux.go:344: starting container process caused "process_linux.go:424: container init caused \"rootfs_linux.go:58: mounting \\\"/opt/nginx/conf/nginx.conf\\\" to rootfs \\\"/var/lib/docker/overlay2/f72f02d7a8f04291ee3dd0515fd75cbaa8e12904816f5bb84c714da3d43f7cf0/merged\\\" at \\\"/var/lib/docker/overlay2/f72f02d7a8f04291ee3dd0515fd75cbaa8e12904816f5bb84c714da3d43f7cf0/merged/etc/nginx/nginx.conf\\\" caused \\\"not a directory\\\"\"": unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type.

是因为没提前创建好挂载目录和配置文件导致conf/nginx.conf 自动创建成目录,删除并创建nginx.conf配置文件即可

ll conf/
rm -r conf/nginx.conf
touch conf/nginx.conf
  • 查看运行容器
docker ps
当前正在运行的容器

安装Lamp环境

拉取一个lamp镜像

docker pull fauria/lamp

创建lamp目录&挂载路径

mkdir ~/lamp && cd ~/lamp
mkdir www logs

创建容器

docker run -d  -p 80:80 -v /opt/lamp/www:/var/www/html -v /opt/lamp/logs/:/var/log/httpd --name my-lamp-container fauria/lamp

查看是否启动成功

docker ps
STATUS为UP说明启动成功

查看所有容器

docker ps -a

进入一个已经在运行的容器

#其中字符串为容器ID
docker exec -it d27bd3998ad9 /bin/bash

删除容器删除前先停止

docker stop  d27b  & docker rm d27b
docker批量删除容器、镜像

一条命令实现停用并删除容器

docker stop $(docker ps -q) & docker rm $(docker ps -aq)

删除所有镜像

docker rmi $(docker images -q)

按条件删除容器

docker rm $(docker ps -a | awk '/test\/webapp/ {print $1}')

按条件删除镜像

#没有打标签
docker rmi `docker images -q | awk '/^<none>/ { print $3 }'`
#镜像名包含关键字
docker rmi --force `docker images | grep keywords | awk '{print $3}'`   
//其中keywords为关键字

作者新手,本文仅供参考,不对之处,还望斧正

相关文章

  • 云计算day04-Docker容器

    技术大佬-徐标杆的docker快速入门01技术大佬-徐标杆的docker快速入门02技术大佬-KVM和Docker...

  • docker容器

    docker快速入门01docker快速入门02KVM和Docker的对比 什么是容器? 容器就是在隔离的环境运行...

  • Docker入门与实战演示

    目录 什么是容器 Docker安装指南 Docker快速入门 Docker入门详解 如何开发容器化的Java程序 ...

  • linux-安装docker篇

    一、docker 快速入门 1. docker官网 https://www.docker.com[https://...

  • WebRTC-Android编译

    一、利用docker的ubantu镜像安装 1、安装docker,Docker快速入门2、下载docker镜像 上...

  • Docker:使用 Maven 插件构建镜像

    通过 Maven 的 Docker 插件可以构建 Docker 镜像 快速入门 在 pom.xml 中添加 Doc...

  • Docker入门系列学习教程

    为了方便大家对Docker的快速入门学习,本人将一些Docker入门基础知识进行整理,供大家进行学习参考,希望会对...

  • Docker快速入门

    part 1: 目标与快速入门 欢迎!我们很高兴你对学习Docker那么感兴趣。这篇快速入门教程包括如下内容: 配...

  • Docker快速入门

    一、概述 Docker is the world’s leading software container pla...

  • docker快速入门

    docker已经是一年前的时候学习的了,当时,不会go语言。工作中一直没有使用,已经忘光了。在放假前,sdk那边说...

网友评论

      本文标题:Docker快速入门

      本文链接:https://www.haomeiwen.com/subject/hotvpqtx.html