40
votes
Accepted
What are the reasons Docker should not be used for databases?
When people talk about running a database in Docker, they do not mean to store the data in a container; they are talking about having a docker image with the DB software, and mounting the data as a ...
15
votes
What practices or tools enable Continuous Deployment of Databases?
The Challenges
I am aware that there are practices such as only adding database objects, i.e. tables and columns, never modifying or removing them
At one company I worked for, a rolling window of ...
15
votes
Accepted
What practices or tools enable Continuous Deployment of Databases?
Pramod Sadalage and Scott Ambler wrote a book Refactoring Databases: Evolutionary Database Design that is an incredibly solid primer to the subject of DBs in a CD org/team.
13
votes
How should I store my environment variables?
I've had two runs at doing environment variables in a scalable way and neither has ended up perfect because, as I've discovered, is a very tricky thing to get right. I'll give a summary of both of my ...
13
votes
Accepted
Why is Prometheus not a good choice for data with high cardinality?
As far as I know, Prometheus doesn't mind high-cardinality data. What Prometheus doesn't like is high-cardinality labels.
Let's start with Prometheus official documentation, it gives a good high-...
9
votes
How to synchronize deployments (especially of database object changes) on multiple environments
I would integrate the schema management into the application itself (or along with it).
Any change to the schema should be committed along the application code (and hence tagged also).
There's ...
8
votes
Accepted
How to version control shared database?
I personally made the unwise choice of cramming five different apps into a single database about 20 years ago. I then had to deal with the repercussions of that. The bad news is, this is really hard. ...
7
votes
What practices or tools enable Continuous Deployment of Databases?
We use Flyway at work for managing Postgres schemas in the app, and Pillar for managing Cassandra schemas. We have found it best if the app manages its own schema.
We had a horrible experience ...
7
votes
What practices or tools enable Continuous Deployment of Databases?
I'd argue a tool alone won't really help unless you shift the schema responsibility to the application team.
We do use liquibase or flyway at work, where the application team is responsible to create ...
7
votes
What are the reasons Docker should not be used for databases?
I wrote about this in depth but here's the summary:
Preventing split brain (electing more than one master node) needs to be solved. Failure to do so can be catastrophic
There are no production ready ...
6
votes
Accepted
Cloud DB operator responsibilities / common tasks
I always saw a DBA as someone who fits in between developers and operations when it comes to database management.
On the one hand, they often take care of backups, clustering, replication, actual ...
5
votes
What is the impact of using Helm Deployments instead of StatefulSets for Databases like MongoDB or MySQL?
Back when Kubernetes announced the new StatefulSet feature with K8s v1.5 (converting it from the old PetSet name), they put out a really good blog post walking through an example of its usage: https://...
5
votes
Accepted
docker: Error response from daemon: Conflict. The container name "/basexhttp" is already in use by container
You're attempting to create two different containers, each with the same name. Each time you execute docker run it will create a container, and you've named the containers the same with --name ...
4
votes
How to synchronize deployments (especially of database object changes) on multiple environments
In our company we manage our application code within a VCS (Git) and most of the applications we work with install their core database from within the setup scripts that ship with the application.
If ...
4
votes
What practices or tools enable Continuous Deployment of Databases?
To answer this question in the context of a mainframe environment, and specific to DB2® databases, there are typically 2 commonly used (not cheap ...) alternatives to pick from:
Object Administration ...
4
votes
Accepted
Google Cloud Storage vs Redis / ElasticSearch
I don't know much about Redis/ElasticSearch, but GCS is not really a database-like solution, it is closer to a file storage solution.
If you're looking for database-like storage Google Cloud offers:
...
4
votes
Accepted
DynamoDB vs RDS for a counter store?
Why not something like Redis? (can use it through ElastiCache). Hard to answer this without knowing the operational requirements of this project. Is this data strictly for logging/research, or is it ...
4
votes
What practices or tools enable Continuous Deployment of Databases?
We use liquibase at our work and I'll speak highly for it. It's also used by our QA tool QASymphony.
We're utilizing it against MSSQL and Oracle databases internally and QASymphony uses/has used it ...
4
votes
macOS testing on Desktop: Docker containers vs. Homebrew installation
One of the cons of Homebrew for the use of testing your DB stuff is how tightly coupled the DB is to your local environment.
You'll inevitably end up needing to manage the details of what services ...
4
votes
Accepted
macOS testing on Desktop: Docker containers vs. Homebrew installation
One of the advantages of using Docker would be that you can easily run tests with different versions of the (DB) apps, which could be quite difficult with Homebrew (some apps don't easily support ...
4
votes
Zero Downtime Deployment with Database Backward Compatibility
There is plenty of information about this. The basic idea goes like so -
Create a script that does the database migration, but make sure that it only adds tables and fields - never removes, renames, ...
3
votes
How to do blue-green deployment with PL/SQL code?
Yes, it is possible, but it takes a bit of work. I assume that the concern with duplicating the database is 1) time and 2) size/storage, otherwise it seems like it would be trivial to spawn databases ...
3
votes
Accepted
Docker MongoDB image - How to specify credentials other than in the compose file?
Secrets support for mongo is built in. You can see in that image's entrypoint script that if you add _FILE to end of username/password values it will pull from those secret files.
As for .js files, ...
3
votes
How should I store my environment variables?
If your environments are per customer, I would suggest in your specific case to have a repository per customer. (In general it is repository per environment.) This repository would have a standard ...
3
votes
Accepted
In a Database Per Service model - should i include the database in the service container?
Keep the DB containers separate. The concept of microservices and containers is to allow each part to be independently updated without introducing changes and outages to the rest of the application ...
3
votes
Include curl commands in a PostgreSQL Docker environment
One way to use curl inside the container will be to use a custom Dockerfile to build you postgrsql container.
Just use the image: postgres:12-alpine as the base image of your Dockerfile and install ...
2
votes
Google Cloud Storage vs Redis / ElasticSearch
We had the similar requirement as there needs to be a set of data cached in a server for serving the application (fast processing) and also by end of the day, we would need to sync the data from the ...
2
votes
DynamoDB vs RDS for a counter store?
For question #1)
I think this could perhaps be better answered on SoftwareEngineering SE.
Nonetheless, I'll risk an answer: for this kind of information (states) coming from that kind of ...
2
votes
Docker MongoDB image - How to specify credentials other than in the compose file?
Here's a solution I've used in cases like this - I utilize Ansible to manage Docker containers, and Ansible Vault to store secrets for those containers.
Ansible Playbook to run MongoDB container
...
2
votes
Cloud DB operator responsibilities / common tasks
The DBA is the person/role who is responsible for the availability, integrity and security of the organizations data. The responsibilities are the same regardless of the technology that happens to be ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
databases × 60docker × 19
amazon-web-services × 8
containers × 8
deployment × 5
networking × 5
images × 5
amazon-rds × 5
docker-compose × 4
continuous-deployment × 4
kubernetes × 3
testing × 3
microservices × 3
bash × 3
mysql × 3
ports × 3
redis × 3
ansible × 2
continuous-integration × 2
terraform × 2
azure-devops × 2
azure × 2
automation × 2
azure-pipelines × 2
monitoring × 2