返回顶部

安装docker并加速,配置LAMP博客

1、通过 RPM 安装 docker 17.03.0 版本并且配置 docker 阿里加速

 

方式一:yum源安装

vim /etc/yum.repos.d/docker.repo

[docker]
name=docker
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/
gpgcheck=0

yum install -y --setopt=obsoletes=0   docker-ce-17.03.0.ce-1.el7.centos   docker-ce-selinux-17.03.0.ce-1.el7.centos (若之前安装过较高版本,先将所有包卸载即可)

 

方式二:脚本安装

 

 Centos 7

[root@centos7 ~]#cat C7_docker.sh

#!/bin/bash

#

#********************************************************************

#Author:          wei

#QQ:   

#Date:         2020-11-14

#FileName:    f2.sh

#URL:   

#Description: The test script

#Copyright (C): 2020 All rights reserved

#********************************************************************

COLOR="echo -e \033[1;31m"

GREEN="echo -e \E[1;32m"

END="\033[m"

VERSION="17.03.0.ce-1.el7.centos"

yum -y install wget &> /dev/null

wget -P /etc/yum.repos.d/ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo || { ${COLOR}"互联网连接失败,请检查网络配置!"${END};exit; }

yum clean all 

yum -y install  --setopt=obsoletes=0 docker-ce-$VERSION  docker-ce-selinux-$VERSION || {

${COLOR}"Base,Extras的yum源失败,请检查yum源配置"${END};exit; }

#使用阿里做镜像加速

mkdir -p /etc/docker

cat > /etc/docker/daemon.json <<EOF

{

        "registry-mirrors": ["https://si7y7hh.mirror.aliyuncs.com"]

 }

EOF

systemctl enable --now docker

docker version && ${GREEN}"Docker安装成功"${END} || ${COLOR}"Docker安装失败"${END};exit ;


2、通过 docker 安装一个 LAPM 架构

 

安装docker

 

#拉取镜像
docker pull wordpress
docker pull mariadb

 


#查看镜像
docker images

 

#docker运行mariadb数据库容器,指定数据库名称和密码,放到后台
docker run --name db --env  MYSQL_ROOT_PASSWORD=123456 -p 3306:3306   -d mariadb

 

#docker exec -it db bash
root@273202c1af40:/# mysql -uroot -p123456
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 10.6.5-MariaDB-1:10.6.5+maria~focal mariadb.org binary distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database wordpress;
Query OK, 1 row affected (0.000 sec)

MariaDB [(none)]> create user 'wordpress'@'%' identified by '123456';
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> grant all privileges on wordpress.* to 'wordpress'@'%' identified by '123456';
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> \q
Bye

 

#docker运行WordPress容器,指定数据库名称,暴露端口允许外网访问,后台执行
docker run --name MyWordPress --link db:mysql -p 8080:80 -d wordpress

 

#查看运行容器
docker ps

 

#登录网站访问
http://10.0.0.17:8080

 

安装包登录WordPress

 

如下图所示,打开浏览器安装WordPress

 

 

 

 

 

 

 或直接使用变量不暴露端口

docker run --name db --env MYSQL_ROOT_PASSWORD=123456 -d mariadb

docker exec -it db bash
mysql -uroot -p123456
create database wordpress;
create user 'wordpress'@'%' identified by '123456';
grant all privileges on wordpress.* to 'wordpress'@'%' identified by '123456';
flush privileges;

docker run --name MyWordPress --link db:mysql -p 8080:80 -d wordpress 

访问: IP:8080
数据库暴露端口安装数据库需指定配置:

数据库配置如下

 

 

 

 

 

 

 

 

 

 

 

报错连接数据库,需对wpuser授权
[root@centos127 ~]#docker exec -it af47082fbb8e bash
root@af47082fbb8e:/etc/mysql/conf.d# mysql -uroot -p123456
mysql> grant all on *.* to wpuser@'%' identified by 'wppass';
mysql> grant all on *.* to wpuser@'localhost' identified by 'wppass';
mysql> flush privileges;

 访问http://10.0.0.127/wp-admin/install.php安装wordpres

 

 

3、写出 docker run 命令的延申指令,如怎么在停止一个 docker 容器的时候自动删除该容器

 


Docker run 命令格式
-i, --interactive 通常和-t一起使用 , 即使没有连接,也要保持连接 -t, --tty 分配pseudo-TTY,通常和-i一起使用,注意对应的容器必须运行shell才支持进入 -d, --detach 后台运行,默认前台 --name string 字符串为容器指定名称 --h, --hostname 字符串容器主机名 --rm 在容器退出时自动删除它 -p, --publish list 将容器的端口发布到主机 -P, --publish-all 将所有公开的端口发布到随机端口 --dns list 设置自定义dns服务器 --entrypoint 字符串覆盖图像的默认入口点 --restart=always 启动策略 --privileged 赋予容器扩展特权 -e, --env=[] 设置环境变量 --env-file=[] 读取环境变量的行分隔文件 --addhost 注入 hostname <> ip解析

 

  

 

 

4、写出 docker run 命令在自动启动 docker 服务时通过什么参数能够启动 docker 中的容器,从而实现容器随着 docker 服务的启动而自动启动

 

 #设置容器总是运行

[root@ubuntu1804 ~]#docker run -d --name nginx --restart=always -p 80:80 nginx

[root@ubuntu1804 ~]#reboot

[root@ubuntu1804 ~]#docker ps

  

 

posted @ 2020-11-15 15:59  九尾cat  阅读(144)  评论(0编辑  收藏  举报