文章目录

  • 设置仓库
      • 更新 apt 包索引
      • 安装 apt 依赖包,用于通过HTTPS来获取仓库:
      • 添加 Docker 的官方 GPG 密钥
      • 设置稳定版仓库
    • 安装 Docker Engine-Community
      • 更新 apt 包索引
      • 安装最新版本的 Docker Engine-Community 和 containerd
    • 列出可用版本(注:这里安装特定版本,所以安装前需要列出可用版本)
      • 安装
      • 测试是否成功
      • 检测安装情况
  • 搭建个人博客
    • 失败案例
      • 创建容器mysql
      • 创建容器wordpress
    • 成功案例
      • 创建数据库文件
      • wordpress配置文件
      • 创建容器mysql
        • 查看是否有wordpress数据库
      • 创建容器wordpress
      • 成功

设置仓库

更新 apt 包索引

sudo apt-get update

安装 apt 依赖包,用于通过HTTPS来获取仓库:

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

添加 Docker 的官方 GPG 密钥

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

设置稳定版仓库

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

# 再次更新软件源
sudo apt-get -y update
# 安装 Docker CE 版
sudo apt-get -y install docker-ce

安装 Docker Engine-Community

更新 apt 包索引

sudo apt-get update

安装最新版本的 Docker Engine-Community 和 containerd

sudo apt-get install docker-ce docker-ce-cli containerd.io

列出可用版本(注:这里安装特定版本,所以安装前需要列出可用版本)

apt-cache madison docker-ce

安装

这里选择 5:19.03.15~3-0~ubuntu-focal 列表中第一个版本,这只是个人建议,这个版本不是最新也不是最旧,其实使用起来差距不大,

sudo apt-get install docker-ce=5:19.03.15~3-0~ubuntu-focal docker-ce-cli=5:19.03.15~3-0~ubuntu-focal containerd.io

测试是否成功

sudo docker run hello-world

检测安装情况

sudo docker version

搭建个人博客

失败案例

docker pull mysql 拉取mysql镜像

docker pull wordpress 拉取wordpress镜像

docker run --name sql -p 3306:3306 -d mysql
//参数的含义:
//其中run表示创建一个新的容器并运行一个命令,
//--name 后面跟的就是这个容器的名称,可以随意取一个,但最好和镜像类似能分别出来
//-p 就是将docker中的端口和宿主机的端口相互映射(前面是宿主机的端口,后面是docker内的端口)
//-d表示创建的是一个在后台运行的容器, 后台运行容器,并返回容器ID
//最后的mysql就是镜像名(当然也可以使用镜像id,他是唯一的,使用docker images就可以查看到镜像的id)


这里呢,端口被那个小皮面板给占了,我把小皮面板里的mysql关闭后,就创建正常,但是无法启动,启动一秒就关闭,查了一下日志,报如下错误:

docker logs cea56de6f8d1

创建容器mysql

最后用了下面这种才解决那个日志报错:

docker run --name mysql -d -it -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql

紧接着其它操作

//表示在容器sql 中开启一个交互模式的终端
docker exec -it sql /bin/bash 进入到sql容器的内部//下面就是Mysql的一些操作了//进入到mysql数据库的内部,初始账号和密码都是root
mysql -uroot -proot//查看用户信息,host为 % 表示不限制ip    localhost表示本机使用    plugin非mysql_native_password 则需要修改密码
select host,user,plugin,authentication_string from mysql.user; //更新user为root,host为% 的密码为123456
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';//更新user为root,host为localhost 的密码为123456
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';//最终就可以使用navicat远程连接数据库了:root 123456 3306 (端口记得要在安全组中开放)//退出容器内只需要输入exit即可

创建容器wordpress

docker run --name wordpress \
-e WORDPRESS_DB_HOST=x.x.x.x:3306 \
-e WORDPRESS_DB_USER=root \
-e WORDPRESS_DB_PASSWORD=123456\
-e WORDPRESS_DB_NAME=wordpress \
-p 8081:80 \
-v /root/wordpress/config:/var/www/html \
-d wordpress\
//大部分参数在上面配置mysql已经介绍了,这里还用到了一些之前没用到的我们介绍一下
// -v 将wordpress容器内的配置文件挂载到宿主机上,这样就不需要每次通过exec进入到容器内部修改配置文件了
// -e  WORDPRESS_DB_NAME=wordpress: 设置wordPress的数据库名称为wordpress;


最后得出这种结论,不知道哪里搞错了,然后从头再来

成功案例

创建数据库文件

root@ubuntu1804:~ mkdir wordpress
root@ubuntu1804:~ cd wordpress/
root@ubuntu1804:~/wordpress vi env_mysql.list
MYSQL_ROOT_PASSWORD=123456
MYSQL_DATABASE=wordpress
MYSQL_USER=wpuser
MYSQL_PASSWORD=wppass

wordpress配置文件

root@ubuntu1804:~/wordpress vi env_wordpress.listWORDPRESS_DB_HOST=mysql:3306
WORDPRESS_DB_NAME=wordpress
WORDPRESS_DB_USER=wpuser
WORDPRESS_DB_PASSWORD=wppass
WORDPRESS_TABLE_PREFIX=wp_

创建容器mysql

docker run --name mysql -v /data/mysql:/var/lib/mysql --env-file=/root/wordpress/env_mysql.list -d -p 3306:3306 mysql

在容器sql 中开启一个交互模式的终端,因为我服务器上sql太多了,还有一个小皮面板里面有sql

docker exec -it mysql /bin/bash
mysql -uroot -p123456 -h127.0.0.1

查看是否有wordpress数据库

show databases;

创建容器wordpress

docker run -d --name wordpress --link mysql --env-file=/root/wordpress/env_wordpress.list -p 8081:80 wordpress

成功


docker,mysql,wordpress搭建个人博客相关推荐

  1. docker安装halo+mysql+nginx搭建个人博客

    docker 安装halo+mysql+nginx搭建个人博客(debian or ubuntu) 1 简介 本文主要介绍debian和国内腾讯云ubuntu下安装docker,使用docker安装h ...

  2. wordpress搭建个人博客

    wordpress搭建个人博客 用途:搭建wordpress个人博客,可以整理归纳自己的知识,方便个人查找曾经所涉猎的,当然最重要的是资源共享,服务大家,帮助别人少走弯路! 1. ECS购买 云服务器 ...

  3. WordPress 搭建个人博客全攻略

    WordPress 搭建个人博客全攻略 概述 这几天搭了个自己的博客,用的 WordPress 因为想弄 https,然后网上的教程都没有那么全面,同时弄完了也发现关于 WordPress 启用 ht ...

  4. 阿里云+wordpress搭建个人博客网站【小白专用的图文教程】

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  5. 使用Wordpress搭建个人博客网站

    前面几篇文章已经介绍了怎么在Linux下搭建LNMP环境: 1.安装MySQL/MariaDB 2.安装PHP 3.安装Nginx 4.nginx配置虚拟主机 接下来开始使用workpress搭建个人 ...

  6. 手把手教你用 WordPress 搭建个人博客

    Hello大家好,我是小张,今天这篇文章介绍一下如何用 WordPress 搭建属于自己的博客,从 0 到 1 手把手教学 目前个人博客的搭建方式大致分为两类 博客前端.后端完全由自己开发,整体从 0 ...

  7. 云虚拟主机+WordPress搭建个人博客详细内容

    很久之前就想直接搭建一个个人博客,之前使用HEXO+Github试过发现太繁琐了,而且还不是很好用(估计是我太菜了).在前一段时间无意中看云虚拟主机,感觉就像发现新大陆啊(原谅我的无知).于是就学会了 ...

  8. 云虚拟主机+WordPress搭建个人博客(图文)

    很久之前就想直接搭建一个个人博客,之前使用HEXO+Github试过发现太繁琐了,而且还不是很好用(估计是我太菜了).在前一段时间无意中看云虚拟主机,感觉就像发现新大陆啊(原谅我的无知).于是就学会了 ...

  9. 腾讯云 + WordPress 搭建个人博客

    本文原地址 开始前了解自己适合那种方式搭建个人博客的几种高效方案 教程一:手动搭建,过程比较麻烦,但可以学习搭建过程 教程链接:[腾讯云的1001种玩法]如何使用腾讯云做博客 记录下搭建过程遇到的一些 ...

最新文章

  1. 算法---计数质数(Java)
  2. HZOJ matrix
  3. Mp4v2封装H264+AAC为MP4
  4. 【学习笔记】30、Python基础综合练习
  5. WinForms项目升级.Net Core 3.0之后,没有WinForm设计器?
  6. 四叉树碰撞优化版,速度飞一样
  7. Java中bytebuffer和string的转换记录
  8. mqtt 发送消息过多_阿里云MQTT服务端注解式消息处理分发与同步调用实践小结
  9. redis分布式锁实现--jedisLock
  10. jdbc中mySQL语句单双引号_JDBC: 执行MySQL语句时,bit类型的数值在java代码中应该怎么表示?...
  11. git21天打卡day19-新建远程仓库
  12. 带蓝牙5.0芯片选型厂商总结和市场趋势分析
  13. 影子系统、沙盒、虚拟机的区别
  14. 阿铭Linux_网站维护学习笔记201903019
  15. 2022年低压电工复训题库及在线模拟考试
  16. 偏光显微镜研究聚合物的球晶形态
  17. 怪物猎人GU-武器派生整理之双刀篇
  18. ar8171 linux网卡驱动,ar8171 8175网卡驱动(ar8171网卡驱动下载)V1.0.1 官方最新版
  19. 如何将bug杀死在摇篮里?
  20. 魔域mysql修改_魔域数据库各表属性完整介绍

热门文章

  1. 计算机ip地址删除,Windows 8 或 Windows Server 2012 中删除一个 IP 地址时,不正确地删除活动路由表项...
  2. 成功解决tornado.application - ERROR - Exception in callback <bound method Nanny.memory_monitor of <Nanny
  3. DL之AlexNet:利用卷积神经网络类AlexNet实现猫狗分类识别(图片数据增强→保存h5模型)
  4. 成功解决AttributeError: module tensorflow has no attribute reset_default_graph
  5. SLAM:SLAM之VSLAM的简介
  6. NVIDIA之AI Course:Getting Started with AI on Jetson Nano—Class notes(一)
  7. DL之yolov3:使用yolov3算法时需要对Ubuntu系统进行配置的简介、过程步骤之详细攻略
  8. ML之xgboost:利用xgboost算法(自带方式)训练mushroom蘑菇数据集(22+1,6513+1611)来预测蘑菇是否毒性(二分类预测)
  9. ML之ME/LF:机器学习中常见模型评估指标/损失函数(LiR损失、L1损失、L2损失、Logistic损失)求梯度/求导、案例应用之详细攻略
  10. AI+5G:2019.03.31第11届中国(深圳)IT领袖峰会【IT新未来: 5G与人工智能】内容概要