docker基礎知識請轉
docker中文文檔:http://docker-doc.readthedocs.io/zh_CN/latest/index.html
docker英文文檔: https://docs.docker.com
一些博客:http://www.alauda.cn/2015/07/17/dockerfileinstructions/
http://www.runoob.com/docker/docker-tutorial.html
docker 客戶端與服務端安裝
簡易安裝ubuntu
which curl sudo apt-get update sudo apt-get install curl curl -fsSL https://get.docker.com/ | sh
給docker sudo權限
sudo usermod -aG docker $USER
退出 shell 重新登陸 查看doker是否安裝成功
docker version
手動安裝略
docker pull 基礎鏡像
docker pull ubuntu:16.04 #不翻牆可能比較慢 #查詢pull下來的ubuntu 鏡像 docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu 16.04 c73a085dc378 2 weeks ago 127.1 MB
#運行ubuntu鏡像並更新()
docker run -it ubuntu:16.04 bash
apt-get update
apt-get install -y nano
#默認是ubuntu的官方鏡像源更新可能比價慢,所以先安裝nano 然后用編輯器換成阿里雲鏡像
apt-get upgrade
apt-get install -y wget
apt-get install -y net-tools
#創建nginx執行用戶
groupadd www
useradd -r -g www www
#提交為新的ubuntu作為鏡像源
docker commit ubuntu:16.04 ubuntu:latest
nginx dockerfile 制作
#目錄准備
sudo mkdir /data
sudo mkdir /data/nginx
sudo mkdir /data/php
sudo mkdir /data/log
sudo mkdir /data/www
#進入nginx目錄准備nginx 配置文件
cd /data/nginx
sudo mkdir conf
#此處放入nginx配置文件
cd conf
#上傳nginx配置文件到此目錄
sudo vim Dockerfile
#nginx Dockerfile內容
# #Dockerfile for nginx # #bash docker image ubuntu:latest FROM ubuntu:latest
#auth info
MAINTAINER peixiguang <554047329@qq.com>
#install nginx
apt-get install -y nginx
#mount file 配置和日志掛載到宿主機
VOLUME /data/nginx/conf /etc/nginx/
VOLUME /data/www/ /data/www/
VOLUME /data/log/nginx /var/log/nginx
#append auto start nginx to bash.bashrc
RUN echo "/etc/init.d/nginx restart" >> /etc/bash.bashrc
#Expose ports
EXPOSE 80
#創建docker-nginx images
cd /data/nginx/
docker build -t docker-nginx .
#創建nginx ,php,mysql 等啟動 腳本
#! /bin/bash case "$1" in nginx) docker run -it -p 80:80 -d -v /data/log/nginx:/var/log/nginx -v /data/nginx/conf:/etc/nginx /data/www:/data/www --name docker-nginx docker-nginx /bin/bash if [ "$?" != 0 ];then echo "start fail" exit 1 fi ;; mysql) ;; php-fpm) ;; *) echo "Usage: $0 {nginx|php-fpm|mysql}" exit 1 ;; esac
#啟動docker-nginx
/data/bin/docker_run nginx