User talk:Bryan Hilderbrand/Meeting Notes (10FEB)

From MWStake
Jump to navigation Jump to search

Raw transcript:

Bryan: Hey guys.

Rich: Hello.

Lex: Hi there.

Bryan: Flex, you're always on the train.

Lex: Yeah. See.

Rich: It's beautiful.

Bryan: That's awesome.

Rich: Yeah.

Lex: Back from skiing.

Bryan: Nice. Just a day trip.

Lex: No, no, I was here. Four days. Can you hear me? I have to wear the mask in the in the train.

Bryan: Yeah.

Rich: No, we can hear.

Lex: Yeah. Okay.

Rich: Yeah, I wasn't sure if we were gonna

Bryan: Did you?

Rich: try to use that Wonder dot me or one of those other tools.

Lex: Oh, that's right. Was that now or

Rich: So,

Bryan: Know.

Lex: Tomorrow.

Bryan: We were planning on doing that tomorrow, but we could, once I don't know, if I can say, everybody, if we know who everybody is, we can try to switch over.

Rich: Well, the other thing is, I have to

Lex: I mean, we can.

Rich: leave early. I've got a 12:00 today, so I wanted to find out what you guys were hoping to accomplish today.

Lex: You see?

Rich: From and I suppose, maybe we should wait for your own. To clarify but, you know, I mean, I don't want to miss anything but at the same time I've got to go at noon. So

Lex: Let's see.

Rich: Oh, sir. Send your your own.

Yaron: Hello.

Rich: Hello.

Yaron: Hi guys. Sorry, I'm late. Okay. Guys. Oh Oh cool, Alex. Wow.

Lex: Hi, I'm on the train.

Yaron: Oh, you mentioned that you're gonna be on a train?

Lex: And yeah.

Yaron: Nice.

Rich: If?

Yaron: Where are you going?

Lex: I'm going back to Zurich from the Alps.

Yaron: Oh wow. Were you skiing?

Lex: Yeah, and babysitting. the two boys for my Cuban ex-girlfriend You know, I think I told you before. So I always take them skiing once a year.

Yaron: Wow.

Lex: But so now on the way back to Zuri, there's quite a lot of snow here.

Yaron: What a? Yeah, fantastic. Man, I'd love to be in the office right now. What a, what a transition from Cuba to skiing in the Alps.

Lex: Yeah, that's right.

Cindy: I want to see out the window again.

Yaron: Yeah.

Cindy: I just joined right as you were turning the oh wow. Nice. Where you head?

Lex: Back to Zuri.

Cindy: From.

Lex: this is from closers actually Davos, you know, where we want to have our

Cindy: Yeah.

Yaron: Oh yeah.

Lex: Conference, so they see.

Cindy: Where we will?

Yaron: Where we will have it.

Lex: Yeah, one day

Cindy: Yes. Oh, that's beautiful.

Yaron: Okay. All right, very good.

Bryan: If?

Yaron: Yeah, that'd be awesome.

Rich: Actually.

Yaron: Well, I guess we can start at a yeah. This is where it's already being recorded. I am pressing. and, so, Yeah. Okay. so, The first, I want to apologize for being a little Kurt. Last time of Kurt is the word, but Yeah. Anyway, it doesn't matter if anyone was offended. I apologize. I I Felt bad about it afterwards. Anyway, I

Lex: oh, I think it's the task of Each to actually. You know, kick people and make them do things.

Yaron: well, yeah, well okay. I mean that's a whole That's a whole discussion about the best way to what is it better to be feared or loved or something? I don't know. I don't, I don't specially want to be feared or loved, but Just just, you know.

Rich: Is this what we're recording or, you know, this is like confessions of your own.

Yaron: I know exactly this is really, everyone know, in the world can can hear my inner thoughts about, My emotional state. well, yeah, but I wanted to talk about that because I don't I don't want I don't want to talk about my emotional state but just the whole idea that I'm I know exactly this is really, everyone know, in the world can can hear my inner thoughts about, My emotional state. Well, yeah, but I wanted to talk about that because I don't I don't want I don't want to talk about my emotional state but just the whole idea that I'm like to be like a

Lex: growth, because

Yaron: Taskmaster or whatever. I got that sense. I think that's part of what was frustrating me last time is is I, I hope that this project isn't just me, you know, asking Taskmaster or whatever. I got that sense. I think that's part of what was frustrating me last time is is I, I hope that this project isn't just me, you know, asking Taskmaster or whatever. I got that sense. I think that's part of what was frustrating me last time is is I, I hope that this project isn't just me, you know, asking Taskmaster or whatever. I got that sense. I think that's part of what was frustrating me last time is is I, I hope that this project isn't just me, you know, asking Taskmaster or whatever. I got that sense. I think that's part of what was frustrating me last time is, is I, I hope that this project isn't just me, you know, asking questions and making decisions or stuff. I think part of it is, it's not clear to me whether anyone else is actually going to use this product. Or output once it's created. I I mean I know Brian and Ike, I don't know if I joining but I know Brian and Ike and I have talked about using it. You know, from a strategy perspective for Wiki works and wikitech and everything else, but I don't know. I think that affects This whole process is knowing who actually is gonna use it. Obviously, it's great to get people's input and And expertise and so forth, no matter what. But Yeah. I mean, that's what I wanted to know is, is what is that people's actual? Relationship to project canasta.

Rich: I have an investment in Mesa, I would be willing to make a change. If If there was a product that was better supported and had all the functionality of noza, the thing that I'm looking forward to most is your Marketplace for with the content.

Yaron: With human data structures.

Rich: whatever, I don't know what term we've settled on but combinations of

Yaron: Well.

Rich: categories.

Yaron: Yeah.

Rich: Form temperature properties.

Yaron: structures but if there's a better terminal because that said

Rich: So I think yeah so that's what I'm in it for is primarily for the end goal of a Marketplace for these data structures and if in the process there is a a Wiki deployment and management infrastructure that exceeds Mesa as it is today I would probably migrate to that.

Yaron: Yeah. Okay. The Alexa Cindy, I don't want to put either of you on the spot, but if you don't want to say anything, you don't have to. If you have anything to share about that be interesting. well, Cindy, I I mean you don't really I can't see you as either a user or an administrator of anything related to this no offense.

Cindy: No, especially in my current role likely not.

Lex: Here.

Cindy: I would say I'm involved for a couple reasons. So yeah, no, I don't see myself as an end user, I was asked for advice and insight, especially into the infrastructure piece. so, that's part of the reason I'm here is I'm happy to help and um, the other aspect being that I have for a long time felt that media Wiki is, Exceptional software for being able to share knowledge. And I think that it only has a subset of the market share. It could potentially have at this point, and there are some impediment standing in its way to Greater acceptance. And Want to, and not only are there impediments, but there are also opportunities that could potentially bring it in front of more people. And so, and this is completely unrelated to my role at Wikimedia Foundation, it's my personal beliefs about the media, Wiki software based on my experience, using it for 10 years prior to the foundation. I think that one of the impediments to its use is the difficulty in installing upgrading and maintaining the infrastructure. And so I would love to see a A. Solution for that in the future. Let's put it that way. And I think there are a lot of candidates and a lot of pieces of candidates that could be combined together into a, a better. Solution in that space. But also I see that having media Wiki out of the box is It's not obvious to most people. What you do next? You know, the blank page problem and so for particular applications in the market, which this group knows very well. Because we've talked about some of those applications that could very

Yaron: If?

Cindy: And provide an easier pathway of Entry where people would begin to use the the software for particular applications. And perhaps, then, you know, either stay, just using that or learn other uses of the Software System itself and that would help with its Market penetration. So, I see this project as both potential way of removing an impediment as well as making Pathways into adoption. And I do see that there are two distinct separate pieces of what we've been talking about. The most of the meetings that I've been part of in recently have been talking about that infrastructure piece, and I think we may have been sort of Meandering off the road a little bit there because one of the key Parts, I think that started this effort was that idea of these packages these data structures and and the software to support being able to Share and disseminate those and I think that's a super important. Um piece of this and I know that the is it page exchange extension. You know, can be a portion of that I've had, you know, thoughts about doing similar things in the past. So I'm excited to see movement in that area. and that's something that somebody could use whether they, Install media Wiki on their own and host their own infrastructure to if we came up with some sort of a package, containerized supporting infrastructure to somebody had a hosted infrastructure with that, that upper layer abstraction would work in all of those environments. And so you know I'd like to see us not get to You know, if we solve the infrastructure piece, solve it as a separate problem. To solving, the upper level data structure and abstraction piece and be able to handle those two as two independent problems for the second for the infrastructure piece. If we're going to try and tackle that you have very different solution set based upon who the customer is. And so if we're going to do that, I think we need to start from the customer and and I think they're actually multiple customers. As I said, you've got people self hosting on their own infrastructure, you've got people working in, you know, hosted in the cloud. And then you've got, you know, if we could come up with that solution space, where, you know, somebody could have a push button, install anywhere, kind of experience that would be a different customer as well. So,

Yaron: If?

Cindy: Yeah, I think that the infrastructure the infrastructure discussion needs to step back a little bit and start from there, and that was a whole lot of words for somebody who doesn't actually have any skin in the game. So

Yaron: Um yeah, just briefly on that. There's no four defined components of this project. It started off at two I guess. And now it's up to four and we've been talking about what is now, what I now would refer to as step number two, and you're talking about doing more with number four. Potentially could go up to five if we start talking about Wiki farms and stuff. I'm not sure that may require a whole thing but but, yeah, potentially, any of, those are useful on their own, Not potentially, definitely once they're created and defined and agreed on stuff. Yeah. Yeah. Okay. Lex you want to

Lex: yeah, I can say you know my

Yaron: Think.

Lex: motivation for Canasta is a combination of philosophy organization and pragmatism because I want to connect it to Woodrow Wilson saying that. I don't I'm not only using all the brains that I have, but all the ones I can borrow too, that's the philosoph. Part. And the pragmatic part is that I once heard that good software is used voluntarily. If you have to force people to use it, it's bad software. And since there's a lot of people in our community that have, you know, a variety of skills. And we can, if we can motivate them, all to contribute, to the same thing, rather than four different ones, That's actually what I'm looking forward. And even if, if those, if that one approach is sort of segmented, you know, I can take out a simple solution or more complex solution, but piecing, this together. So that all of us, contribute You know, to one single goal, we all Row in the same direction that's so. And I I commend you for launching that effort.

Yaron: Yeah. Okay. Okay, well, that's helpful to know. I want to talk more about what I call ask step, number two, process and output number two or whatever it is that something. And yeah.

Cindy: hit your own, could you you say there's four things now and I don't know what those four things are, it

Yaron: okay, listen on the project that the

Cindy: great if you could say what they're

Yaron: page but number one is a way to, to

Cindy: Okay.

Yaron: put a set of extensions and skins together into one installation. For you using composer something else. Number two is taking an installation like that. However, it was created and Turning it into a package or image, or whatever it is that can be installed. Three is. Page exchange or something like it process to install Wiki pages. And then fours, the actual products of Wiki pages, Packages of Wiki pages. Yeah, and then potentially they could be a fifth for creating a Wiki Farm. I don't know. so, Yeah so so yeah apologies Sydney because I still want to talk about the what I guess you could call the infrastructure image thing not packages thing. But I yeah, I thought about it after. We had our, we had like a Mesa demonstration last week and then actually, I had a talk to Ike about it. Who's done his own docker-based solution? I think part of the issue with with My lack of understanding. Was I just didn't, I didn't really understand the whole Docker concept. I mean, from what I never for, when I Now understand Docker, always does what you Lex referred to as a sledgehammer solution, which is it just wipes out everything and starts over every time you do an upgrade. That's not true.

Lex: well, not with Rick, not with regard

Yaron: like,

Lex: to Wiki but with regard to the infrastructure components, yes,

Yaron: Well okay. Yeah, in your case you have a zip file but you don't have to. You can actually just have a Docker image for the for media. He is well, no. Was that not true? That's actually something true.

Lex: Well, I don't know. I I could I could do that.

Yaron: Yes.

Lex: but at least all the persistent data Parts

Yaron: Yes.

Lex: But at least all the persistent data Parts would have to be volume in but all the rest could go in there. Whether we want that or not is a

Yaron: Fine.

Lex: Thing.

Yaron: But it's it's always what you would

Lex: We have to figure out. Yeah.

Yaron: call a sledgehammer solution. No. Whether it's a Docker image or a zip file, you three over right?

Lex: No, I know.

Yaron: Everything upgrade

Lex: no, I was referring to my own solution as a sledgehammer with if

Yaron: I know. But

Lex: you. But if you compared to Mezza because Yeah.

Yaron: okay.

Lex: Mesa are very elegantly, you know, takes the scalpel and carves out one

Yaron: Yeah.

Lex: little extension. It puts the next one, whether whereas whole thing and put all back, that's

Yaron: Okay.

Lex: all back, that's what that's what I

Yaron: Yeah.

Lex: refer to.

Cindy: In the fundamental. So best practices for use of Docker are that you sort of like the idea of

Lex: You know.

Cindy: You know, separating presentation from logic or whatever in Duck or you want to put, you want to separate the underlying operating environment and software from the persistent data. and it should make no it, no difference whatsoever, if you if you replace one of the containers, with an upgraded one that you know, has you know, a better software whatever and you may need to run a script, of course to update the persistent data to match the schema For example, but the point is that anything that's persistent is outside the containers and the operating environment, which can easily be started. Stopped rebuilt is inside the docker containerized environment.

Yaron: Okay. Yeah, fine. My point is just Well, not really my point but but what I it seems to me that from the user perspective. It doesn't matter if you change one file or 1,000 files. When you're when you you know upgrade Apache or up the Apache image or upgrade media week or anything else. Yeah. You just start and stuff. The start stop upgrade and start the process over again. Yeah. Which sort of gets it. What you were talking about it? I it seems to me that the docker is a better approach than Mezza. Having thought about it more. I think it from what I understand, it's more foolproof, it will work. It's there's more of a guarantee that it'll work across different operating systems. and, Yeah, it just seems more robust. As Lex was saying a while ago. I believe that's still the case. It, you know what what ansible is doing is cool, but it just seems like docker. Is a better fit for what we need. A rich. Let me know if you or anyone. Let me know if you disagree with that.

Rich: No, I don't disagree but I have a question. Where do these Docker images live?

Yaron: I don't know.

Lex: Well.

Yaron: I mean, I guess

Rich: The reason.

Lex: and, Now you can have them on actually you could have them anywhere but normally they're on Docker Hub either public or private. So, it's like like a GitHub.

Rich: Okay.

Lex: A GitHub is for code. And Docker Hub is for Docker images, which are blueprints of containers.

Rich: and so, the I guess the question would be if I'm importing a Docker image into my Enterprise organization. What assurances can I give my organization that I'm not pulling in? You know, some Docker image. that isn't Vetted. So, the advantage of Meza is that if you're pulling code into your organization, you're pulling it in from reputable locations. So, you know, when I do a get, you know, when I do a young install of ansible and I do, you know, a whole meeting with you, for meeting with that or I have insurances. I can give you assurances to my organization that all of the codes coming from reputable basis, the docker image, that means that Canasta then would be 100% responsible for everything. All the binary data in the doctor image, And that might be a barrier for organizations that have requirements on code imperative.

Yaron: Do you mean legal responsible?

Cindy: I had.

Rich: Not legally cyber security.

Cindy: so I I have I have a bit of insight on to that, so From the docker perspective images are described by yaml files and they are open to look at. So it's not, you're not getting binary images. What you're getting is, a series of yaml files that refer to other yaml files that return to yamla, refer to Gamal Falls, and you can go all the way back to the source and see on Docker hope Hub. Some images are actually termed official images and so they are ones that they maintainers have reached a certain level of vetting. So that you can trust those. The source of them without feeling you need to go into quite as much detail. But even with those, everything specified in the yaml file, and I'll say from the perspective of Of Mesa and other other ansible based or any, you know. A similar types of solutions that they are defined also. In yaml files in a GitHub repo and we trust. The folks at Nasa that have contributed to that software because we have done our own vetting and I trust that if I download from get Mesa that? That the software is good. But that's because I know the people in that Community, anybody can upload something to get the same way anybody

Rich: Sure.

Cindy: can upload something to dockerhub. So it so it's a combination of, you

Rich: Okay.

Cindy: know, reputation. and the fact that it is open and that you can examine what you've got and and Come to assurances, that there's nothing nefarious in it.

Rich: Okay, thank you for that clarification. I I didn't understand the docker. What you described about Docker was, was new to me. Does that mean that that maybe meeting with the local media Foundation has a kind of a golden Docker image for media looking?

Cindy: I do, yeah.

Yaron: Right.

Cindy: there is an official media Wiki

Rich: Terrific.

Cindy: image. That's not necessarily what's being proposed to be used here, but there is indeed an official. Media with image.

Rich: Okay. Well, then that would be the only comment that I would make is, is that as we go forward with this project. If we're going to down the doctor path, then we just keep one eye on, you know, if possible whenever possible please opt for Welcoming Docker images. You know, don't arbitrarily make a meeting with Ibaka image when there's one from the looking media Foundation that can use. But thank you.

Bryan: Is that word from right now?

Yaron: All right.

Bryan: This we're calling the official one from the Wikipedia Foundation. The doctor image.

Cindy: Um, it's not necessary. I don't know that Lexus. I haven't looked at it, looks better be answer whether his software goes. I think he builds his own media, Wiki container.

Bryan: But there is any Docker image that's released by the Wikipedia Foundation, that's out there.

Cindy: Yes.

Bryan: Okay.

Cindy: Yes, there is yeah. like all things third party, it's not It is as well maintained as the volunteers on staff. You know, in producing it but it's not, it's not backed by the Wikimedia

Yaron: It.

Cindy: Foundation per se, but it is maintainable communities.

Rich: No, guarantee of merch.

Cindy: Yeah.

Yaron: I have two comments. Well, first the three highlight. Yeah, I had first of all highlights.

Ad: Hi guys. Yes sure. I am. Sorry, I'm so late. I hope I can. I can. Contribute, something.

Yaron: so, yeah, so my, the, my other comments are that there's no guarantee, quote, unquote of of security for, for anybody using The you know, so-called Enterprise media Wiki you know there could be a major security bug in semantic media. We keep Dakota. Totally random example. Just how it is. For what it's worth. Second it. Well this is a comment slash question. Does it really make sense to use the the standard semi-official media Wiki Docker image? If we're adding our own skins and extensions to it, can that work? Or would it be easier to just have our own in?

Cindy: I, I would think that we would create our own organization that would get its own vetted.

Yaron: Yeah.

Cindy: you know, official account and that we would create our own images that have that same official status and we

Yaron: Yeah.

Rich: when we

Cindy: we would probably use like an

Yaron: Right.

Cindy: official Apache, and a official, my sequel, official, whatever, probably not going. All the way up to the level of media Wiki though, because you're right,

Rich: Okay.

Cindy: because we want to install media Wiki in a different configuration than the official media with the image.

Yaron: Okay.

Rich: When we say we are we referring to

Yaron: Yeah.

Rich: project Canasta, or referring to the Meeting with the stakeholders organization. because it seems to me that if project Canasta is, maintained and owned by just, you know, random people, you know, I don't mean random, you know, none of you are random but but meeting with

Yaron: If?

Rich: the stakeholders is a is a is an established business entity. And and that's such. I think there's some value that if it were to be the official owner of project that can ask them. I think we carry something like

Yaron: We haven't made a decision on that. We could talk about that now. You want. I don't know if anybody wants to talk about it. It's not something that has to be decided at the moment, but You know as far as ownership of this thing that doesn't exist yet of course but there are other organizations that I mean there's also well there's also the the open semantic data Association. Which is smw specific. So might not fit, but it's another potential option or there could be a new thing. Or that doesn't need to be a foundation. but, Yeah.

Bryan: I might be better for offline or something just for my own information. You're talking about these yaml files that Compose a Docker image or Define it. It's kind of being a fingerprint of what it what it's doing or what it looks like. Is it possible? Then just to say, here's what the difference is between the so called official Wikimedia Foundation Docker image and It's one that we're using like, hey, here's the, you know, anyone point, I can run a quick comparison and here's the differences.

Cindy: yes, because the animal files don't dictate necessarily like they just dictate the syntax but not necessarily the structure, it wouldn't necessarily be that you'd have a line by line comparison unless you chose to make the Canasta yaml file look like the official one. You know. Modulus and differences. But one could do that if they if that was a design guideline

Lex: I'm and can I add for completion? You know, theoretically, we could use the Wikimedia media Wiki container and just volume in whatever we want, because by volumeing in, you're just overlaying. Whatever is within in the container at that same location. That's one possible. I mean, just for the sake of completeness and the other one would actually to be to take that Wikimedia media weekly container as a basis for our own additions for a Docker image.

Cindy: Yeah, there is a concept.

Lex: Isn't that true?

Cindy: Yeah, there is a concept of an override file. That, that would replace portions of it with something changing. The volume characteristics, I have found to be much trickier than it would seem if you, if you create a A file system, hierarchy inside the container and then attempt to replace it with the volume outside. I have had All sorts of difficulties trying to change that particular characteristic. If it's not defined inside the container and you'd like to add

Lex: Okay.

Cindy: something it's easy but replacing

Lex: Okay.

Cindy: something that's already in the container is a little bit more problematic than it would say. But you might be able to handle that with an over. I file, I don't know.

Yaron: Yeah, I don't see I don't see a reason to do that. I don't know. Who knows. Well this gets it. What I what I was The thinking afterwards is, you know, we've been talking all this time about which existing solution to use if any, whether it's mezzo or blue, spice, or Lexus thing. Now I'm thinking, and, and sorry to keep changing my opinion on this. But now I'm thinking the best thing to do might be just to create something from scratch and and Lex I think this gets it what you've been talking about a lot with your solution being just a proof of concept or an interface or whatever and that's that's really what I wasn't getting before. Is I I just thought it was a ton of work to create a Docker image and set it all up and it's not really that the hard part is just deciding. I guess what the strategy should be and so forth. Lex is nodding along for anyone reading the transcript right now. Yeah. So, that's the. Yeah. And that the thing explains a lot of the, the confusion before. Okay. So, maybe, maybe we're all decided on that. It's it, it's, it sounds like people were generally, might have generally been thinking that all along and it was just I didn't get it. That.

Ad: That I ever.

Yaron: It's really an issue of deciding on strategy.

Ad: yeah, this probably you probably already discussed this but what is going, if we are, if we are going to have a container, what's going to be in it, so, of course, media weekly installation, but are we going to add some Some. extensions and are going to And and what, what do the users can do with it, can they? Yeah. So what's going to be in it? And what What we should people be able to do with it?

Yaron: Sure. Well, that gets to step number four. I shouldn't call it steps. I'm not sure what the best word is some subtask. Number four, component number four of project Canada.

Ad: Okay, which is deciding on the set of

Yaron: Which is deciding on the set of packages, I thought you're gonna go a

Ad: packages. I thought you're gonna go with different Direction with that

Yaron: I thought you're gonna go a different direction with that question, but the

Ad: question, but, The doctor image should move without

Yaron: doctor image should. Presumably also contain a passion of

Ad: the contain a passion.

Yaron: MySQL and PHP besides media Wiki.

Lex: And can I add some? I mean, it's not at all decided, whether the media weekly core files should go inside the container.

Yaron: Sure.

Lex: That's an option to be decided,

Yaron: Right.

Lex: right? And whether you want, I'm sure it's

Yaron: Yes.

Lex: not a good idea to to add meet MySQL to that Apache container. So there's a lot of decisions to be taken here. The question is whether

Yaron: What your shirts? Not a good idea or you're not sure

Lex: right or not?

Yaron: it's a good idea.

Lex: No MySQL ideally. I mean, you could run it off a container and volume in the data. But it's, I mean me, for example, blue spice can sometimes packages everything into the same, but that's not necessarily the best solution. Just to try it out, you know, it's easy to change where to put stuff, it's all about the abstraction

Yaron: Yeah.

Lex: layers. But I was just, you know, question.

Yaron: Right.

Lex: not at all clear what we want to put in media Wiki files that's an option.

Yaron: Sure.

Cindy: And I'll just I'll just mention the word orchestration again. same argument as before, so

Yaron: That's a good that relating equals

Cindy: You are. Okay. I

Yaron: kubernetes.

Cindy: Orchestration equals a lever level on top of the containers. So you have a bunch of containers, you've got a container, that's got a patchy. You've got a container. That's got my sequel, I'm sorry about the dogs freaking out in the background. And then you've got a layer on top of

Yaron: Then.

Cindy: at the simplest level Docker compose which would you know, build things up and create a little Network that these things can talk together but they're all. So other approaches like kubernetes that would allow you to have a file that describes Functionally what your environment is and then kubernetes brings up and up as many pods and containers as it needs to satisfy those requirements. And so it's a more functional description of how things are laid out. And so different people in different environments can can

Ad: Yeah.

Cindy: compose their environment differently. So,

Ad: Sydney this practice stupid, quit stupid question, but I know that you can run, you can run compound, you can run the containers on on a server in AWS in Azure on your local PC can you run kubernetes on your local PC as well? Can you use kubernetes also for

Cindy: Yeah.

Ad: yeah, let's say in a local situation

Cindy: Yeah.

Ad: as well as on Azure or AWS.

Cindy: Yes, yeah. Yeah.

Ad: Yeah, well that's that might be interesting.

Cindy: In fact, in fact the I'm still like Asia Azure and AWS have pre-configured I don't know the terminology they use, but yes, they have support for that and tools that help you. But absolutely, yeah. On my MacBook Pro, I can run kubernetes.

Yaron: Well, what's the downside of using kubernetes? I'm seem to remember

Cindy: There's some level of complexity, it's another thing to learn.

Yaron: For people installing it or people setting it up as people creating the

Cindy: For us for us designing.

Yaron: product.

Cindy: need to understand Docker plus kubernetes, you know, whoever we have, which is not, you know, it's just It's just another thing.

Yaron: Okay, that doesn't worry me as long

Cindy: Another thing to learn.

Yaron: as it's not harder or more brittle or whatever the word is for the people.

Cindy: I would say it's less brittle you know every time every time my lap top I rebooted or like yesterday it decides on its own to suddenly in the middle of a meeting reboot whenever that happens, it does not bring my Docker containers back up and so there's some level of, you know, startup that one would need to configure kubernetes, you know. Of course you'd have to have kubernetes start as a service when you restart your server, but it would then be responsible for bringing up everything that needs to be up in order to satisfy your environment.

Bryan: So how does it work together with that orchestrating layer for the the End customer the, you know, assuming they're not tech savvy as I understand it. All you have to have for Docker. If you were running them from a command line is just have Docker and then kind of point the thing and this thing is running, do you?

Cindy: You'd have to dive Docker and kubernetes the docker for Mac, includes a minimal implementation of kubernetes. But not that I'm saying that aren't deployment environment would be a Mac but you know, AWS Azure have both Docker and kubernetes available. Um you know, Windows has its own set and Linux. So you know, it's just another tool that you'd have to install in that environment.

Yaron: Is that gonna be sorry?

Bryan: so,

Yaron: Good.

Bryan: They're gonna go ahead, you're on, you're probably asking the same question.

Yaron: Well, just gonna ask is that's gonna be a problem for anyone. Like it's it's there a lot of Platforms, that have Docker set up and not kubernetes. And it's hard to install kubernetes or something.

Cindy: Not not that, I not that I know. But that was, the strict gets back to the, who is the customer question, what environments do we want to support? And then Yeah, so so I I wouldn't say that you know, it has white availability at this point.

Yaron: Yeah. Okay. Well it doesn't sound like a, who's the customer kind of question then if anyone can has it or it can easily install it?

Cindy: Yeah, I'm not sure, you know, I don't think it has quite as much support in a, you know. Let's say a laptop kind of environment. As I said, you know, that I put my understanding is that the kubernetes implementation of provided for the Mac is not as full-featured as you might find in. Um, you know, in some other environments but are we really looking to, you know, is the person that we're trying to support somebody who's going to be running, one of these things on their own personal computer, or is the whole point of the software, the fact that it can be shared over the web and so it's going to be hosted in some sort of a server based environment.

Yaron: yeah, for my perspective, the the web server thing is the only thing that really matters, but it sounds like even for even in the case of Mac

Cindy: There is a yeah you can do it for local experimentation.

Yaron: Yeah.

Cindy: Absolutely.

Yaron: Yeah. No trade-off there, I guess. Um, presumably we're not going to be doing something really complex with kubernetes, where we would be, you know, texting the capabilities. Oh Alexa,

Cindy: Yeah.

Ad: Elects the left will be back.

Yaron: tunnel right now.

Ad: Even a tunnel right now.

Cindy: In a tunnel.

Yaron: Oh

Ad: Yeah, yeah, so it, but it means that if Lex Things Are this if like says, well you should have the database in a separate container and you can do that. And then orchestrate with kubernetes, there's no reason not to do that because you can do that anywhere.

Cindy: Yeah, and kubernetes actually has

Ad: Yeah, in kubernetes actually has

Cindy: And kubernetes actually has specific

Ad: specific abstractions built in for

Cindy: abstractions built in for databases so that you can describe your

Ad: databases so that you can describe

Cindy: connection to your database in an

Ad: your connection to your database in

Cindy: abstract way.

Ad: an abstract way.

Cindy: And then choose separately how you

Ad: And then she's separately how you

Cindy: want to have that whether you want it

Ad: want to have that whether you want it

Cindy: to be my sequel over here, whether

Ad: to be my people over here.

Cindy: you want to have it.

Ad: to be my people over here.

Cindy: you want to have it.

Ad: to be my people over here.

Cindy: you want to have it.

Ad: to be my people over here.

Cindy: you want to have it using Amazon,

Ad: Using Amazon.

Cindy: what is it East?

Ad: These

Cindy: What's

Ad: What is it? That's already RDS.

Cindy: What's their database thing? RDS. Yeah.

Ad: Yeah.

Cindy: Yeah.

Yaron: Huh.

Ad: Yeah.

Bryan: so,

Ad: that's, Sounds nice.

Yaron: Yeah.

Bryan: I think the good.

Cindy: And I should warn you that I'm getting to the edge of my expertise with kubernetes at this point. So anything I say pass this is a

Ad: Yeah.

Cindy: slightly, you know take with a grain of salt but this much I know.

Ad: I know how to write it. That's yeah.

Bryan: So who's the customer and how are they, how are we expecting that? They're gonna run this, you know, for example, the NASA crew and they first started had access to a contractor's laptop. It was in the network and you know

Ad: In the network.

Bryan: James and Darren compared it and ran it. On just a laptop, not necessarily A serverless. You know, laptop was kind of server since are we supporting that use

Ad: And are we supporting in that use case?

Bryan: case?

Yaron: Ideally.

Ad: Ideally.

Yaron: I mean, I, you know, whether or not

Ad: I mean. you know, whether or not

Yaron: it's the ideal use case, it would be great to support every kind of

Ad: support every

Yaron: Customer, I guess you can tell if

Ad: Customer, I guess.

Yaron: possible. I I whatever, I don't know what

Ad: But whatever, I don't know what

Yaron: operating system, they were first

Ad: operating system they were first

Yaron: running it on, but it sounds like

Ad: running it on, but it sounds like

Yaron: this.

Ad: this.

Yaron: system will work on that kind of

Ad: system will work on that kind of

Yaron: setup.

Bryan: I'm trying to do is so they also,

Ad: so they all know once they started

Bryan: they started figuring out how to do

Ad: figuring out how to beat them created

Bryan: do stuff created their own extensions

Ad: their own extensions and really

Bryan: and we're really deep in it. So at that point, we would not consider them to be. A user or a customer of this, right?

Ad: Use your right.

Bryan: They would recommend they

Ad: It would expect then they

Bryan: Start their own and download that

Ad: Start their own.

Bryan: atarball. And

Yaron: I don't know, actually.

Ad: I don't know, actually.

Cindy: If?

Yaron: envisioning. It there would be something. In local settings not PHP.

Ad: In local, settings.php.

Yaron: call a separate settings file.

Ad: that would call a separate settings file, so that you could install your

Yaron: you could install your own and

Ad: own and develop your own experience.

Yaron: develop your own extensions without

Ad: and without having to touch any of

Yaron: having to touch any of the Canasta

Ad: and that's the product.

Yaron: product. Something like that.

Ad: Something like that.

Cindy: I would say that.

Ad: I would say.

Cindy: there's a fundamental difference

Ad: That there's a fundamental difference

Cindy: between a development and a

Ad: between. A development environment.

Cindy: production environment for

Ad: And production.

Cindy: um, you know, extension development, if if the developer wants to use an IDE and wants to do, for example, use x, debug, and be able to, you know, breakpoint through code and stuff. It's you're going to have different characteristics to your setup for that environment. I don't think we should be targeting, you know. But by the time you get to a developer, you're talking to somebody who's going to have some level of expertise and and requirements, for particular ways of having things available and I think it would be a bit of a distraction to say we need to have an environment that will work perfectly for developers as well. As for end users of whatever. This is the Canasta is completed, creating if it's possible great. But you know I use a different dockerized media Wiki environment for when I'm doing software development. Then then what we have in our you know, Wikimedia production environment and you would want to have access to a staging environment where you can actually test the things that you've developed in realistic situation. But, those are three distinct kind of operating environments that you're not going to have one size fits all

Yaron: Are you sure you could just have a separate Canasta product for, for both or all three of these wikis/environments? No.

Cindy: You could have a separate Canasta product, sure, but it wouldn't be the same product. It would be tweaks.

Yaron: Okay.

Cindy: tweaks to it but sure, you know. You know, there are very specific things that I do that require operating system access and you know, I do bash SSH into, you know, use that girl bash into I guess my container to run some things at the command line for my development environment when I'm testing for example to run unit tests. That is something that The end user of Canasta would not do so to have a to have a robust

Bryan: so,

Cindy: development environment, there's certain things that you're going to require that are going to be outside the Configuration of something, that's an end user Focus tool.

Yaron: What? I, I don't understand. They can't ssh in and make changes if it's, if it's Canasta Docker base.

Cindy: They should not remember, you should never be making any changes in your container. Your container is something that you bring up and you never SSH into and tweak because you want to have Yeah, that's the whole Docker philosophy. anything that you're going to

Bryan: and so, that's

Cindy: manipulate needs to be outside as Lex says, volume into your container.

Bryan: that I mean that's just kind of saying that if if your production you would never want to SSH into your production Wiki but you could just create a new Docker image and just call it your staging or, or, you know, really development Wiki and then ssh in and tinker and you can have all the normal Admin rights and then just destroy it. Without the intention of kind of porting that in to test something. And then you would Ask whoever's the maintainer or somehow get what you did into the official Docker image. It will be pulling from next time.

Cindy: Sure.

Bryan: Okay.

Yaron: Hold on because I think this is important. I really the way I'm envisioning it, I really want people to be able to install their and create their own extensions and skins within this environment, whether that

Cindy: Which is why, which is why Lexis saying that, they all of that stuff would be outside of a container and volume in.

Yaron: I didn't, I'm not sure that's necessary because what you can have is a special Second media, Wiki directory containing, you know, local extensions, and local skins and a local local settings that PHP, which hopefully would have a better name than that. Which is then called from the main local settings that PHP file. So you can make, you can't make changes to it existing installed extensions I suppose. But but you can add in all your new tensions and skins and settings in a place that is outside of that image.

Cindy: Exactly. Yes, it is outside.

Yaron: Yeah.

Cindy: And then volume in. Essentially, you

Yaron: Right.

Cindy: have a link from inside. The container that is able to access those things but they are outside the container.

Yaron: That's, I don't know. I guess that's the word. I thought volume. Didn't was like, it was Docker speak. And I'm just talking about the PHP code knowing about the installation. I guess just a different way. Describing it fine.

Cindy: yeah, the point the point is,

Ad: yeah, the point and the point is,

Lex: Yeah.

Cindy: the yaml file that builds your

Ad: that the yaml file, that builds your

Cindy: container builds.

Ad: container builds.

Cindy: should consider sacrosanct.

Ad: should consider soccer saying.

Cindy: And despite the fact that developers

Ad: And despite the fact that developers

Cindy: like, I do go in and tweak in a

Ad: I do go in and tweet in a production

Cindy: production environment, nobody should

Ad: production environment, nobody should

Cindy: be bashing into the container and

Ad: Nobody should be bashing into the container and doing stuff at the

Cindy: doing stuff at the command line.

Ad: command line.

Cindy: That is has any persistence.

Ad: persistence.

Cindy: It's the whole

Ad: the whole

Cindy: Structure is based upon that

Ad: Structure is based upon that

Cindy: assumption.

Ad: assumption.

Yaron: All right.

Ad: Hi.

Yaron: just

Ad: That's that's things like generally,

Yaron: It seems like generally just good

Ad: Just good to development practice.

Yaron: devops practice.

Ad: But devops practice.

Yaron: And I'm talking as someone who's been

Ad: And I'm talking to someone who's

Yaron: doing a

Ad: been.

Yaron: direct development on production for the past 15 years or so. So not I'm not proud of that.

Cindy: And and the Wikimedia environment we test all of our code in production on like one of the top whatever websites, right? So you know they used to give out a t-shirt if you broke and then fixed Wikipedia they don't give out the T-shirt anymore. Somebody thought it was in bad taste but I think now you get a sticker. but the point is that,

Ad: It depends, what is on the beat on the T-shirt?

Cindy: Yeah. Yeah. Well it was something like I broke Wikipedia and fixed it, you know?

Ad: Well.

Cindy: But if you all remember Victoria, she got very upset once when somebody tweeted about having broken Wikipedia and she did not think we should be

Ad: but the point is that,

Cindy: publicizing that fact. But, but the point is, that code, you know, we've got this three tiered, you know, like the media wiki.org website is in group zero, which is your first level of testing, wikis, and our photo our code rolls out to that first. And so, if I merge something into core next Tuesday, it's gonna be running on media wiki.org and if it breaks, You know, I need to fix it. So he so all of this to say that I agree with your own. I also test code in production. I'm not proud of it, but you know, I don't think we want to design a system around testing code in production,

Yaron: Sure. But what we're talking about seems pretty agnostic or neutral as far as that's concerned. We have this image, people can can you know, use it the right way or the wrong way, but it seems like it would it lets people do it things the right way. If they want, yeah.

Cindy: Yeah. Lex, I'm just looking to you for a little bit of support in the. You really shouldn't be going in there and tweaking the inside of the container.

Lex: no, the other thing I wanted to add is that you've got in configuration option from outside the container using environment variables, So, that's another.

Cindy: Environmentals.

Lex: So these are the two you can volume in stuff and you can, of course, connect services to it, but that's something we would do anyway. And then you've got a whole set of environment variables, But again, you're on, you really have to understand that you could volume in the entire week, media, weekly core. I mean, the entire installation directory

Yaron: Yet.

Lex: But of course you know you've got the freedom there. You've got all the freedom of the world, you can you can volume in one skin. You can even volume in just local settings PHP as one file volumeing in. Doesn't mean it needs to be a folder. It can be one file.

Yaron: Okay.

Lex: It's just like, it's a spider, you know, spreading out two or three legs onto the ground and all the rest is in the spider.

Yaron: Yes, sure um yeah just briefly when I when I talk about local settings.php doing a require, once on some local local settings that PHP file, I don't think that counts as volume in that I could be wrong about that. Just it's might be a semantic issue. No pun intended.

Lex: Well, known if you, if you require your local local settings than that, local local settings is volume in.

Yaron: Okay, I thought volume, meaning it was was Docker terminology.

Lex: Well again, you know, imagine Docker being darker container being a house and having the coffee machine outside in the garden and reaching it through the window. Okay, you can place the coffee machine inside your kitchen, or in the garden. And you just volume it in, through the window window. Right? And you can, but you can also, you look, you can volume in the

Yaron: Sure.

Cindy: If?

Lex: kitchen. So you put the entire kitchen into the garden and put a door in the, in your house wall, and then you volume, am I right, Cindy?

Cindy: You are absolutely right. I'm it's just that your example is one of something that probably somebody doesn't want to do. So I'm trying to think of an example where you want to volume something in for the garden and it's better to have it out there.

Lex: Yeah.

Ad: But I well, if you have the coffee machine inside the house, but you want to be flexible with the coffee. So everybody wants different coffee. So the coffee is outside

Cindy: And so your volume, the coffee from the garden.

Ad: Yeah, you volume go the coffee from the coffee.

Lex: Well, let's say you have a coffee,

Ad: For the supplier.

Lex: man. You know, really I mean filling up your your coffee stock and you can do that from the garden. so, you want to volume it in rather than having an into your, in your

Ad: Into your, in your kitchen and

Lex: kitchen and giving the coffee, man,

Ad: the coffee, man.

Lex: the key to your kitchen.

Ad: Your teaching, awesome.

Lex: So some something like that.

Ad: yeah, that sounds

Cindy: For, you know, the milk man leaving bottles of milk on the front porch. Yeah.

Ad: Yeah, that sounds like a great idea by the way. We never want to be out of coffee.

Lex: Hmm. They got.

Cindy: And yes.

Bryan: and,

Yaron: Well, yeah no, it makes perfect sense. When you put it that way,

Ad: I have I have another question where we are nowadays. We are in the process to of integrating all that with a perfect get flow. So that means that it means that you develop things and you put it in git and from get you create all those containers. and, And then you never touch. Yeah, you don't legs.

Lex: Product to do

Cindy: Yeah.

Ad: Is that you? And then you it's so can we do is that something that we might want to? To use as well to be.

Yaron: If?

Ad: you have flexibility because you can, you can generate a container. With one push of the button.

Cindy: Yeah.

Ad: So so your definition of what you have is not in the container but in get

Bryan: I think that's similar to what I does.

Cindy: Yeah. In hello world does the same thing too for Yeah.

Yaron: So what does that mean? Instead of a Docker image for your media, Wiki files, you just have it in get

Cindy: No, no, you still have that. It's just that you can. I think they call them get actions. Now, sort of like, if you're running Jenkins or whatever Travis, you know, there are things that you can configure within get that run scripts for you that allow you to to build from there.

Bryan: and if you had a difference between, I think I uses it on a per customer basis, so small changes between customers are defined on get

Yaron: But what's being stored in git is the

Cindy: Yeah.

Yaron: the yaml files.

Cindy: Yes.

Yaron: Okay, fine.

Cindy: Yeah. I am going to have to run because I have a meeting in three minutes and now I really want coffee.

Yaron: Yeah, the guy a key to your kitchen.

Cindy: Yeah. Anyways, I

Yaron: It.

Cindy: Am run though but good chatting with

Yaron: There's nothing right.

Cindy: you guys. I think we have another thing tomorrow morning for Lex to do a demo. Is that right?

Yaron: Yeah.

Bryan: Yeah.

Cindy: Cool.

Lex: No.

Cindy: I will see you guys then.

Yaron: Yeah, okay. Bye Cindy.

Cindy: Safe travels, Lex.

Ad: it travels like,

Lex: Right.

Cindy: Bye.

Ad: What time is that Lex?

Yaron: Yeah. He's a Lexus giving it doing a demo at 9 am eastern time, which is, I think, 3 pm for you. Of his quote, unquote solution, which I guess is more of a proof of

Ad: He's?

Yaron: concept.

Bryan: Do you do that? And

Ad: Yeah.

Yaron: yeah, just

Ad: I'm, I don't know if I can make it but I would like to Here, be invited.

Bryan: What? One quick note.

Ad: Anyway.

Bryan: The invitation that will be coming. Shortly has a main Google just like this one but look in the notes below. We're going to be trying to different platform. It's called Miro. I think just to try out different conference platforms anyway so that's what.

Ad: Yeah. Okay.

Yaron: Oh, it's well. It's been an hour.

Ad: Well, it's been an hour.

Yaron: I wanted, I did want to ask this is

Ad: I wanted, I did want to

Yaron: something that we almost talked about

Ad: Almost half of that a few times

Yaron: a few times before, which is the

Ad: before, which is the question of

Yaron: question of whether meeting should be

Ad: whether meaning we should be a doctor

Yaron: a doctor image or not.

Ad: image or not.

Yaron: I'm Cindy probably has some things on

Ad: Well, Cindy probably has the

Yaron: this, but Less. I don't know if you can still hear

Ad: less. I don't know if you can still hear

Yaron: us, but we

Ad: We

Yaron: It seems to me that.

Ad: Seems to me that.

Yaron: Of having a separate image for me to

Ad: Having a separate image immediately

Yaron: use the way to go as opposed to just

Ad: the way to go.

Yaron: using a zip file or something. Lex you might disagree with that.

Ad: Let you make this agree with that.

Yaron: I don't you can talk now

Ad: I don't know.

Yaron: And, but I don't know if anyone has

Ad: but, I don't know if anyone has been

Yaron: any thoughts on that.

Lex: No, let's let's look at that tomorrow

Ad: Let's let's look at that tomorrow

Lex: morning.

Ad: morning.

Lex: that will be,

Yaron: Fine.

Ad: Maybe.

Lex: answer.

Yaron: It'll fine, okay.

Ad: I will it fun. And okay, anybody else have any well

Yaron: Okay. Does anybody else have any? Well, I guess we can just talk about

Ad: I guess you.

Yaron: Then Or tomorrow afternoon for you.

Ad: Tomorrow afternoon, please.

Yaron: Or tomorrow extremely early in the morning for burnt. Okay.

Ad: Okay.

Yaron: place to

Ad: place to

Yaron: wrap it up.

Ad: wrap it up.

Yaron: it, I'll just tell you my view things

Ad: I'll just tell you my view, he can be

Yaron: to me, like now that Docker plus

Ad: like now that Dr. Klept over 90 with

Yaron: kubernetes with her own.

Ad: with their own,

Yaron: Custom yaml files is the way to go.

Ad: custom yaml files is related to go.

Yaron: and including an image for media

Ad: Including an image.

Yaron: Wiki, but we'll see tomorrow about that. Where the

Ad: where,

Yaron: Product consists of Apache life.

Ad: the product and just

Yaron: My school PHP.

Ad: Presumably elastic detected.

Yaron: search as well.

Ad: Well.

Yaron: And Presley media key as well.

Ad: It's possibly mediocre as well.

Yaron: Where local settings that PHP has

Ad: Where local settings has either one

Yaron: either one or two calls outside.

Ad: or two tall outside.

Yaron: Settings file.

Ad: Settings file.

Yaron: it, it makes sense have a before and

Ad: that. It makes sense out of before and

Yaron: after

Ad: after

Yaron: Settings file being called from

Ad: Settings file being called. From the settings update.

Yaron: settings.php so you can really have, you know, full control over. What is happening?

Ad: You talk about that or anything else.

Yaron: Yeah, but that's my view. If anybody must talk about that or anything else now,

Bryan: I'll just say, I'm not sure from I

Ad: Obviously, I'm not sure I had to talk

Bryan: had a talk with Lex earlier about the

Ad: with Lexus of the orchestration

Bryan: orchestration level and it wasn't

Ad: Bryan: immediately clear based off of a little bit of web research that he had done and I kind of looked at as well, if Kubernetes was required or Docker compose was able to do all the same things. It sounded like from what the link was is kubernetes, would be needed if you were if you were developing on a multiple hosts, And if not, then maybe it's not necessarily. And, you know, there's some similarity between Docker swarm and kubernetes and otherwise if you didn't need that shared host, it just is a Docker composed that would be able to do all the same things but I think Cindy probably has more insight and maybe Lexus researched it since

Yaron: What stock are swarm briefly is that in? Is that another thing that a separate from Dr? Docker compose or playing docker?

Bryan: For my almost zero understanding. I think it can do a lot of stuff that kubernetes can.

Yaron: All right.

Bryan: The organization layer that sits kind of on top.

Yaron: okay, it seems to me that we can't go wrong with any of these

Lex: Here.

Yaron: kubernetes might add more complexity in creating it, but once it's created it, I'm guessing any of them will work fine for, you know, 90% of cases

Bryan: and just the time add in, it's

Yaron: I hope.

Bryan: something. I was thinking about, as far as what the customer was or how the use case, you know would be there could be a, you know, a Docker image or something a little bit. More complex with kubernetes or some orchestration that list somewhere that a normal. Some what sound these are that has access to a server could reach out grab and deploy and test media Wiki very quickly with some set of extensions that's great but that same tool could be used or something

Lex: Here.

Bryan: similar by a hosting provider you know like today's Solutions you know you could have on your website this easy way for someone to just click they don't even have to have access to a server. They're spending something up on on your your resources to give this to go. So you know, even Less of a barrier to entry for for some people. So if you guys agree is that is that too customer uses one? Someone that has a server that wants to play with many Wiki medi-wiki and two. A hosting provider that's allowing somebody else to test. That. That end customer doesn't even have a server themself.

Yaron: Yeah, definitely. I mean personally, I think it'd be great if you know someone could easily create a new media, Wiki hosting site using Using. Project Canasta output or even a variety of hosting sites. Maybe one for each use case like a BPM Wiki farm and a And CRM, Etc, that's what you're asking.

Bryan: Yeah. Just basically saying there. the, the output of this could be, you know, for someone just to spend something up to try out like a specific package and they have access to a server or You know, a company that configures in a way that you know, with one click or using your company server, to allow some user to spin up that same package for VPN test as well.

Yaron: If you saying like a one, click Wiki Farm setup.

Bryan: I don't know if it has to be a farm in this case, but one quick to deployment for

Yaron: Oh, okay. Yeah.

Bryan: Like, why do you need a farm? If it's one, click.

Yaron: Right. Sure.

Lex: Here.

Yaron: Yeah. I mean I don't know how that would work. Exactly it's a well I don't I'm not sure what the difference is. If it is just a matter of whether you can, whether you need to do it from a command line or whether or whether they can be a web page with a button with you can Install it from.

Bryan: Yeah well I was picturing is is the, you know, there's a place. Let's just pretend it was just Docker and ignore kubernetes. There's a Docker image that's hosted and someone that Savvy enough to run a little bit of, you know, Docker compose install or whatever. And then you know, grab that Docker image can have a Wiki going Based off of the canastas, you know model. Right away, right? But another user that doesn't have AWS or doesn't have a local server, but that wants to try it some hosting, some companies including, you know, Wiki works and blue spice can have one click Solution that's basically doing some of the same things at the command line would be doing but they're abstracting that all the way for the user. These are just clicks a button. Enters a little bit information, maybe a credit card, if it's required and then they have a Wiki they can test with

Yaron: yeah, now you're talking The credit card thing. That that I mean that that potentially is a fifth component of. This thing is is well or yeah, I guess service, even a sixth, I'm not sure. But some kind of web page or whatever it is that provides that button. um,

Bryan: I'm not I'm not even saying that it should be an output of project can ask. As far as the button I'm just saying

Yaron: Okay. Well, you think should we worry about

Bryan: here's,

Yaron: the software enables that but I would think that's I would think it's I think it's inevitable that you could do that if you have a Docker image or images to do the setup, it's just a matter of put in doing a little bit of a web interface to let somebody call that I would think

Bryan: Yeah. And then, all in this is, I'm seeing

Yaron: but,

Bryan: two kind of customers for this one, somebody that has access to a server in the command line and they can get this going and to hosting provider that wants enable this for other people that don't have that access.

Yaron: Yeah, I mean so far with all this discussion of who the customer is, I haven't heard of any case that this wouldn't support. so it we might not need to really figure out who and who isn't the customer?

Bryan: Yeah, Fair Point. Originally thinking developers wouldn't be able to use it, but it sounds like we can Do bad, coding practices and still use it.

Yaron: I don't know. I'm maybe I didn't fully understand what Cindy was saying, but it seems to me that if you, if all your developing is your own extensions and skins then then it'll work fine and you don't need to touch any of the Canasta product, and you can do whatever you want, whether it's, you know, production development or staging or anything else.

Bryan: I think that I think and chime in,

Yaron: The.

Bryan: but I think that's if it's set up that way, if everything's You know, volume in or whatever in a way that allows you to do that otherwise, you're actually you're actually sshing into the docker image and making changes which for production. You're not supposed to do but if you're just doing that to test and then destroy it. And then incorporating the changes you made into the official image for for later production. Use that it's fine.

Yaron: well, know what I'm saying is, as long as you're as long as you're only modifying, your own extensions, and skins and/or, extensions, and skins that are not part of The. Image, they're not part of the Canasta product, then you don't need to touch anything that came from docker.

Bryan: Yeah. Yeah.

Lex: If?

Bryan: And then all that I just has to be that the the things that are not in that image are not in there from the start right. Like we want to choose that those are outside so you can Tinker with it, right? Because if it's all in one big Docker image and there's nothing outside and there's And there's nothing outside communicate way, right?

Yaron: I'm not sure stand.

Lex: but, No, you have to understand that the docker container is ephemeral. You can get into the darker container, make changes the moment you restarted, all those changes are gone.

Yaron: Sure.

Lex: right?

Yaron: Yes. Yes, that part I understand.

Lex: so, just

Yaron: Yeah.

Lex: There's no persistent data in a Docker container unless you build it from scratch.

Yaron: Yes. Yeah, that part I understand but what I'm saying again is, is as long as you're only making changes to extensions that are not part of that image that that you didn't down

Lex: That.

Yaron: there. It's whether it's, you know, some other third party extension or your own extensions, then it's then there's no problem.

Lex: Yes, but ideally I extensions, don't go into the docker image.

Yaron: Oh, well discussion.

Lex: You know, it's think think of no, no.

Yaron: Lex: As I say, you could put them in there. But it you could also in, you know, integrate the the extensions into Apache, but you wouldn't want to do that. You should think of the darker container rather being a patchy than media Wiki. So let's talk about an Apache container.

Yaron: Okay.

Lex: No. so, the extensions would always be

Ad: Body.

Lex: outside, you can always change those extensions.

Yaron: Wait. What I thought you're gonna talk

Ad: I think you're gonna talk about

Yaron: about Apache.

Ad: Apache, I think.

Lex: That's right. No. Look the easiest is let's look at it. Let's look at it tomorrow tomorrow morning.

Ad: Yeah, I think I think that's I think

Lex: understand it better.

Ad: that's a good idea. I think that's a good idea. So I'm for me.

Yaron: Okay.

Ad: It's evening, I'm

Yaron: Yeah.

Ad: I'm going to have dinner. At least I hope I dinners there.

Lex: Okay.

Ad: Okay, I hope to see you tomorrow.

Yaron: Okay good.

Ad: I have another meeting at exactly the same time. I'm going to try to reschedule because I want to see Lex Lexus performance. Okay, bye.

Yaron: Cool.

Bryan: okay,

Ad: Bye.

Yaron: Okay.

Lex: Okay.

Ad: Have

Yaron: Yeah. Okay. Um yeah, just saying it for the moment. What I'm what I was envisioning is that there would be a Docker image that holds me core media heat plus any extensions and skins that we want to have an any settings that we want to be the default. Uh, yeah, yeah. Pretty sure that lets you disagree with that. I just want to clarify that. That's how that that's what I am thinking. But yeah, maybe tomorrow.

Lex: So sorry, I sorry. I missed your question because I had to show my ticket.

Yaron: Okay, it wasn't really a question. I'm just saying.

Lex: So, can you?

Yaron: I'm saying I'm saying what I Envision at the moment is that there would indeed be a Docker image that holds not just core media Wiki, but any extensions and skins that we want to include for that product.

Lex: yeah, there, you know, we we can do that, we can do that and then we can talk through the

Yaron: Yes.

Lex: how the use cases would look like and maybe we agree on that. Of course we are.

Yaron: okay, you just

Lex: We're all We're all free.

Yaron: Fine. Okay.

Lex: No. No, you can. You can put the entire computer into one Docker image.

Yaron: Well, no, I know, I I we agree. I I know that, you know, that we can. I'm just saying you, you don't, you think it's about idea.

Lex: well, the problem is that anything that you put into that container is fixed.

Yaron: Yeah.

Lex: So of course, the Yeah. And then if you want to add extensions, you have to put the extensions folder outside.

Yaron: yeah, but

Lex: Or at least find a solution to mirror it simply kid stuff. Yeah.

Yaron: yeah. That's fine. Eventually.

Lex: Okay.

Yaron: And you also need the images folder to be outside. which we didn't really talk about it, but but that's also,

Lex: Well, that's very easy because it's it's persisted must be persistent because otherwise all the people

Yaron: But yes.

Lex: would lose whatever they uploaded. So that needs to go outside.

Yaron: Sure.

Lex: Now.

Yaron: All right.

Bryan: It just for a little bit of coordination. I think tomorrow. Well, there's a, there's a server that's running right now for for Lexus, Ubuntu test right now, your own has access to it. Let's do. We want to have your cock your own through the steps that the plan remote,

Lex: Yes, we can do that. I can I can do it. You can we can do it in parallel. I do it on my virtual machine and

Yaron: Yeah, I don't need to one running things to say.

Lex: no, no but you should, you should

Yaron: Okay, fine.

Lex: it's like, you know, handing you the bike, and trying it out rather than showing you pictures. So I'm, we can do that side by side. So your own can reenact everything. I do, you know, as you know, it's it's three three or four. it's like, you know, handing you the bike, and trying it out rather than showing you pictures. So I'm, we can do that side by side. So your own can reenact everything. I do, you know, as you know, it's it's three three or four. Steps. And then it should it should work.

Bryan: Yep.

Yaron: Cool.

Lex: maybe you can try it out and Brian again, but I haven't changed anything since our last successful try, except that?

Bryan: I think.

Lex: You know, the check. Checking the version difference. that's that you will see once you have when you carry out the upgrade, You can check what has exactly changed.

Bryan: yeah, I I

Lex: Not sure whether you try that out.

Bryan: I'm not gonna do it because that we just have a fresh one and I would just probably just go it and create another fresh one. But yeah. Last time I tried it was yeah, it's

Lex: Okay.

Bryan: pretty magical.

Lex: Okay.

Bryan: so we'll see how that new meeting environment goes Miro or whatever, but but your own you want me to send you the you still have that file and

Yaron: The SSH key the public?

Bryan: yeah.

Yaron: Yeah. Yeah, a private key. Yeah.

Bryan: Okay. Do you want to test and make sure? I just I just restarted it should be working right now. See if you can connect to it.

Yaron: Okay.

Bryan: Okay. Otherwise I'll recently some stuff, but I think we're ready for more.

Yaron: Should I try it right now? Now, what's the? IP address.

Bryan: Right now I got it.

Yaron: I probably have any email from you.

Bryan: I mean, it might be an email as well or the

Yaron: Wait, are you sending it to me or telling me or putting in chat?

Bryan: and the chat.

Yaron: Okay.

Bryan: and, and here's the You have the passphrase handy. You want me to put that in the shot?

Yaron: Oh yeah, sure. Okay. Man, well, but I might not need this or maybe I will. Alright, let's see.

Bryan: If you're using putty, you need it.

Yaron: Okay. I am using. Okay. So man so I need to re-run. That key thing that you sent me.

Bryan: Mmm. Now you just need to open putty point it to that IP address Point putty to your private key file.

Yaron: No, I didn't have to do that last time.

Bryan: Yeah, you did.

Yaron: Oh, um, all I remember was was running

Bryan: and then,

Yaron: that or installing that thing you sent and then going to putty and it just worked it was when I was installing the key that I had to enter the passcode,

Bryan: No. Yeah, no. No. The the passphrase. Okay.

Yaron: Passphrase.

Bryan: if you go to, On the open it. So on session, you know, you have a name session and then, the host name or IP address is that IP address and then under SSH under off You should browse and point it to your private key. Right. and then you, and then you're either gonna type in or under connection data type in Ubuntu, in the auto login, username or you can get there and and type of Boon to and then it's gonna ask for your past phrase and then you'll just

Yaron: If?

Bryan: paste that in, right?

Yaron: Okay, start over. Start over again as they say speak to me, like I'm a child or an intelligent dog.

Lex: The golden retriever.

Yaron: Yes.

Bryan: Okay, so you're you have a putty configuration open right now, right? You're not loading anything. So you can Name it, something name like it Docker test or whatever. So on session type in under sessions, you know, something you want to call

Yaron: Yeah.

Bryan: it. and,

Yaron: I'm Dr. Ted

Bryan: Yeah. And then above that, where it says, host name or IP address, copy the 50.18. It's in there. Okay.

Yaron: done it.

Bryan: menu under that, there's a SSH underneath that, there's off.

Yaron: Yes.

Bryan: So there's a private key file for authentication. Hmm, point that toward to wherever

Yaron: Yeah.

Yaron: I don't know where it is. It's not under downloads.

Bryan: Okay, so you need it. Hold on, the put that in a riot.

Yaron: Okay.

Bryan: Okay.

Yaron: Yeah. What happened to the one I had before?

Bryan: No, it's fine. If you have it before, it's the same one.

Yaron: I know. But yeah, I know but what I'm just I'm asking myself.

Bryan: Oh yeah, I don't know. So, so you've browse to that now?

Yaron: Yes.

Bryan: okay, so now under a connection and then data

Yaron: Well, hold on. Okay. Oh, it was there this whole time. I just didn't I didn't spot it. Okay. Yeah, so okay, I'm using the old one fact. Doesn't matter.

Bryan: Yep, fine.

Yaron: Say.

Bryan: Fine. And then under connection and data auto login, username just type in Ubuntu. All lowercase.

Yaron: Okay.

Bryan: And then scroll back up and then click on the session at the very top and then just click save.

Yaron: Say.

Bryan: Yep. And now and now in the chat here, copy the to your clipboard. That passphrase.

Yaron: Up. Yes.

Bryan: That simple perish.

Yaron: Okay.

Bryan: Okay. And now, you know, just click open on

Yaron: Sure.

Bryan: your petty thing. And it'll pay. You know it's your first time connecting maybe. Do you want to just say yes? And then it'll be asking for your passphrase, and then just, you know, right? Click or paste, paste that in and hit enter.

Yaron: it's not asking it's Just hanging.

Bryan: Okay, something is wrong then. Maybe can you share your screen?