学习Docker的过程就是安装各种镜像、环境搭建的过程。下面是常用Docker公共镜像的安装方式,记录下来,环境收藏~
一、安装Mysql
1.创建mysql
下载镜像:
docker pull centos/mysql-57-centos7创建容器:
docker run -di --name=mysql --restart=always -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 centos/mysql-57-centos7二、创建redis
下载镜像:
docker pull redis创建容器
docker run -di --name=redis --restart=always -p 6379:6379 -e requirepass=123456 redis三、创建mongodb
下载镜像:
docker pull mongo创建容器:
docker run -di --name=tensquare_mongo --restart=always -p 27017:27017 mongo四、创建nexus仓库
nexus是maven、npm的私服仓库软件,在企业内部可以使用此系统安装私服,防止因网络缓慢、及其他问题导致的包无法下载问题。自己公司内的包可以上传至此仓库,配合使用。
下载镜像:
docker pull sonatype/nexus3创建容器:
docker run -di --name nexus3 \
 --restart=always \
-p 8081:8081 \
-p 8082:8082  \
-p 8083:8083  \
-p 8084:8084  \
-p 8085:8085   \
-v /opt/nexus-data:/nexus-data \
sonatype/nexus3错误处理:
mkdir: cannot create directory '../sonatype-work/nexus3/log': Permission deniedchown -R 200 /opt/nexus-data/五、安装easy-mock
easy-mock是接口模拟工具,供前端开发使用。摆脱了后端接口未完成的情况。
下载镜像
docker pull blackcater/easy-moc创建容器
docker run -d -p 7300:7300 --link mongodb:mongodb -v /opt/mock-config/:/easy-mock/config --name easymock blackcater/easy-mock
六、安装docker-compose
curl -L https://get.daocloud.io/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
七、安装easy-mock
docker-compose up -d八、安装gogs
下载镜像
docker pull gogs/gogs
创建存储目录
mkdir -p /var/gogs创建容器
docker run -di --name=gogs --restart=always -p 10022:22 -p 3000:3000 -v /var/gogs:/data gogs/gogs
重新安装时记得删除/var/gogs下文件,并赋予权限
http_port 改为3000 ,root_url改为dominIP:3080
九、安装GitLab
下载镜像
docker pull docker.io/gitlab/gitlab-ce
创建容器
docker run -d -h gitlab --restart=always -p 2222:22 -p 18001:80 -p 8443:443 -v /docker/gitlab/config:/etc/gitlab -v /docker/gitlab/logs:/var/log/gitlab -v /docker/gitlab/data:/var/opt/gitlab --restart always --name gitlab gitlab/gitlab-ce:latest
密码123456789
十、安装内部邮件系统
拉取镜像
docker pull bestwu/ewomail创建容器:
 docker run  -d -h mail.zdpx.com --restart=always   -p 25:25   -p 109:109   -p 110:110   -p 143:143   -p 465:465   -p 587:587   -p 993:993   -p 995:995    -p 18002:80   -p 18003:8080   -v `pwd`/mysql/:/ewomail/mysql/data/   -v `pwd`/vmail/:/ewomail/mail/   -v `pwd`/ssl/certs/:/etc/ssl/certs/   -v `pwd`/ssl/private/:/etc/ssl/private/   -v `pwd`/rainloop:/ewomail/www/rainloop/data   -v `pwd`/ssl/dkim/:/ewomail/dkim/   --name ewomail bestwu/ewomailserver
默认管理用户名:admin ewomail123
邮箱管理后台http://192.168.4.188:18003 账号 admin 密码 ewomail123
接收不到邮件解决办法
有效于错误日志报10024端口错误
错误原因:10024端口跑的服务主要用于ewomail中反垃圾反病毒作用,然而docker镜像中没有集成,所以会无法接收到邮件。
- 注释/etc/postfix/main.cf中的
content_filter = smtp-amavis:[127.0.0.1]:10024
receive_override_options = no_address_mappings十一、容器搭建DNS服务器
拉取镜像:
docker pull sameersbn/bind创建容器:
docker run --name bind -d --restart=always --publish 53:53/tcp --publish 53:53/udp --publish 10000:10000/tcp --volume /srv/docker/bind:/data sameersbn/bind:latest登录账户密码:root/password
十二:搭建nginx服务器
拉取镜像
docker pull nginx创建容器
docker run -d -p 80:80 --restart=always --name nginx nginx拷贝配置:
docker cp -a nginx:/etc/nginx/ /docker/nginx/conf
停止并重启
docker stop nginx
docker rm nginx重新运行挂载
docker run -p 80:80 --restart always --name nginx -v /docker/nginx/www:/www -v /docker/nginx/conf:/etc/nginx/ -v /docker/nginx/logs:/var/log/nginx -v /docker/nginx/wwwlogs:/wwwlogs -d nginx重启
docker restart nginx十三、关闭防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动十四、创建私有仓库
拉取镜像
docker pull registry创建容器
docker run -di --restart=always --name=registry -p 5000:5000 registry十五、创建jenkins
拉取镜像
docker pull jenkins创建容器
docker run -d -p 18005:8080 -v /docker/jenkins:/var/jenkins_home --name jenkins --restart=always jenkins
docker run  --name jenkins --user=root -p 18005:8080 -p 50000:50000 -v /docker/jenkins:/var/jenkins_home -d jenkins/jenkins:lts
jenkins换源:
以上的配置Json其实在Jenkins的工作目录中
$ cd {你的Jenkins工作目录}/updates  #进入更新配置位置$ vim default.json   #这个Json文件与上边的配置文件是相同的使用vim的命令,如下,替换所有插件下载的url
将文件中所有,
http://updates.jenkins-ci.org/download/
替换为
https://mirrors.tuna.tsinghua.edu.cn/jenkins/ghttp://www.google.com/
替换为:
https://www.baidu.com/十六、安装tomcat
拉取镜像
docker pull tomcat创建容器
docker run -d --restart=always -v /docker/tomcat:/usr/local/tomcat/webapps --name=tomcat -p 18006:8080 tomcat十七、安装oracle
拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g创建容器
#启动启动容器
docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
docker start oracle11g创建软链接
docker exec -it oracle11g bash切换到root 用户下
su root
密码:helowin编辑profile文件配置ORACLE环境变量
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH创建软连接
 ln -s $ORACLE_HOME/bin/sqlplus /usr/bin
切换到oracle 用户
 这里还要说一下,一定要写中间的内条 - 必须要,否则软连接无效
su - oracle登录修改密码:
sqlplus /nolog
conn /as sysdba
alter user system identified by system;
alter user sys identified by sys;
也可以创建用户  create user test identified by test;
并给用户赋予权限  grant connect,resource,dba to test;
alter database mount;
#刷新下表 
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
服务名:
helowinXDB
端口号1521
添加模式:
create user 用户名 identified by 口令[即密码];十八、YAPI环境搭建
创建volume
docker volume create yapi-mongo创建一个储存卷,用来专门存放yapi使用的mongodb的数据
为什么要独立出来,这是为了以后升级的着想,数据库保留,只要启动的时候关联一下就行了
启动mongodb
docker run -d --name yapi-mongo -v yapi-mongo:/data/db -p 27017:27017 mongo初始化Yapi和启动Yapi
docker run -d --name yapi -p 3000:3000 --link yapi-mongo crper/yapi这里比上面多的一个参数就是--link,用来使连个容器通讯的,
过程均可用docker logs 查看初始化的管理用户用户名密码
