美文网首页
docker学习

docker学习

作者: ryh000 | 来源:发表于2019-01-29 23:00 被阅读0次

docker安装

Ubuntu 14.04 16.04 (使用apt-get进行安装)

# step 1: 安装必要的一些系统工具

sudo apt-get update

sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common

# step 2: 安装GPG证书

curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

# Step 3: 写入软件源信息

sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

# Step 4: 更新并安装 Docker-CE

sudo apt-get -y update

sudo apt-get -y install docker-ce

--------------------------------------------------------------------------------------------------------------------------------------------------

# 安装指定版本的Docker-CE:

# Step 1: 查找Docker-CE的版本:

# apt-cache madison docker-ce

#  docker-ce | 17.03.1~ce-0~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages

#  docker-ce | 17.03.0~ce-0~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages

# Step 2: 安装指定版本的Docker-CE: (VERSION 例如上面的 17.03.1~ce-0~ubuntu-xenial)

# sudo apt-get -y install docker-ce=[VERSION]


常用Dockerfile

ubuntu14.04+lamp

FROM ubuntu:14.04

RUN sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list

RUN sed -i 's/security.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list

ENV TZ=Asia/Shanghai

RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

# Update sources

RUN apt-get update -y

# install http

RUN apt-get install -y apache2

RUN mkdir -p /var/lock/apache2 /var/run/apache2

RUN sed -i '$a\ServerName 127.0.0.1'  /etc/apache2/apache2.conf

RUN apt-get install -y mysql-client mysql-server

RUN apt-get install -y mysql-client mysql-server

RUN service mysql start &&\

mysqladmin -u root password root &&\

mysql -u root -proot -e "create database mydata;" &&\

    mysql -u root -proot mydata < /etc/mydata.sql 

RUN apt-get install -y software-properties-common

RUN LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php

RUN apt-get update && apt-get install -y --no-install-recommends \

        libapache2-mod-php5.6 \

        php5.6 \

        php5.6-cli \

        php5.6-curl \

        php5.6-dev \

        php5.6-gd \

        php5.6-imap \

        php5.6-mysql \

    && apt-get clean \

    && rm -fr /var/lib/apt/lists/*

COPY ./start.sh /start.sh

RUN chmod +x /start.sh

EXPOSE 80

CMD ["/start.sh"]

start.sh

#!/bin/bash

/etc/init.d/apache2 restart

service mysql restart

/usr/bin/tail -f /dev/null #或者/bin/bash


命令及用法

docker build -it test_tag .       //-it是为了给容易命名新的tag,.为dockerfile的路径

docker run -itdp 80:80 test_tag  //-it是容器的tag,-d是后台运行,-p是端口映射

docker stop 容器id

进入容器

docker exec -it 容器id /bin/bash //这里使用/bin/bash进入容器

docker exec -it 容器id sh            // /bin/bash用不了的情况可以使用该命令进入容器

删除容器或镜像

docker rm 容器id

docker rmi 镜像id

docker stop `docker ps -aq`       //关闭所有容器

docker rm `docker ps -aq`          //删除所有容器

docker rmi `docker images`   //删除所有镜像,只有先执行前两个命令才可用第三个命令,不然会报错

重命名镜像

docker tag IMAGEID(镜像id) REPOSITORY:TAG(仓库:标签)

查看容器ip

docker inspect --format '{{ .NetworkSettings.IPAddress }}' <container-ID>

docker inspect <container id>

docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name_or_id

相关文章

网友评论

      本文标题:docker学习

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